金沙国际app-金沙国际手机app下载

金沙国际app包括教育和科研机构建设、学科共建等,欢迎来到金沙国际手机app下载这里有多种线上娱乐游戏,金沙国际app获颁“创意中国榜”中国文化创意产业领军企业,是一家专业从事网络休闲平台游戏开发、运营的服务性企业。

当前位置:金沙国际app > 网络世界 > Java学习笔记-12.传递和返回对象,学习笔记-12

Java学习笔记-12.传递和返回对象,学习笔记-12

文章作者:网络世界 上传时间:2019-10-11

Java学习笔记-12.传递和返回对象,学习笔记-12

1.Clone()方法产生一个object,使用方法后必须产生的object赋值。

Vector v2 = (Vector)v.clone();

2.Clone()方法在object中是保护类型方法,如果自己创建的类需要使用Clone()方法的话需要自己重新写一个,并且继承Cloneable接口。

package tweleve;

import java.util.*;

class MyObject implements Cloneable {
    int i;

    MyObject(int ii) {
        i = ii;
    }

    public Object clone() {
        Object object = null;
        try {
            object = super.clone();
        } catch (CloneNotSupportedException e) {
            System.out.println("MyObject can't clone");
        }
        return object;
    }

    public String toString() {
        return Integer.toString(i);
    }
}

public class LocalCopy {
    static MyObject g(MyObject v) {
        v.i++;
        return v;
    }

    static MyObject f(MyObject v) {
        v = (MyObject) v.clone();
        v.i++;
        return v;
    }

    public static void main(String[] args) {
        MyObject aMyObject = new MyObject(11);
        MyObject bMyObject = g(aMyObject);
        if (aMyObject == bMyObject)
            System.out.println("a==b");
        else
            System.out.println("a!=b");
        System.out.println("a=" + aMyObject);
        System.out.println("b=" + bMyObject);
        MyObject cMyObject = new MyObject(31);
        MyObject dMyObject = f(cMyObject);
        if (cMyObject == dMyObject)
            System.out.println("c==d");
        else
            System.out.println("c!=d");
        System.out.println("c=" + cMyObject);
        System.out.println("d=" + dMyObject);

    }

}

3.如果希望一个类能够克隆那么需要有下列步骤:(1)实现Cloneable接口

                                                                             (2)覆盖Clone()方法

                                                                             (3)在自己的Clone()方法中调用super.clone()

                                                                             (4)在自己的clone()中捕获违例 

金沙国际app,4.String类中所有能修改String的方法其实都创建和返回了一个新的String类,原来的String类是没有改变的,包括+和+=,StringBuffer比String操作字符串时更有效。

package tweleve;

import java.sql.Ref;

import org.omg.CORBA.SystemException;

public class Stringer {
    static String upcase(String s){
         return s.toUpperCase();
    }

    public static void main(String[] args){
        String qString=new String("howdy");
        System.out.println(qString);
        String qq=upcase(qString);
        System.out.println(qq);
        System.out.println(qString);
    }

}

http://www.bkjia.com/Javabc/1216699.htmlwww.bkjia.comtruehttp://www.bkjia.com/Javabc/1216699.htmlTechArticleJava学习笔记-12.传递和返回对象,学习笔记-12 1.Clone()方法产生一个object,使用方法后必须产生的object赋值。 Vector v2 = (Vector)v.clone(); 2.Clone...

本文由金沙国际app发布于网络世界,转载请注明出处:Java学习笔记-12.传递和返回对象,学习笔记-12

关键词: