登录  /  注册
首页 > Java > java教程 > 正文

Java中传递和返回对象的实例代码

零下一度
发布: 2018-05-24 13:58:56
原创
1272人浏览过

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");elseSystem.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");elseSystem.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()中捕获违例 

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);
    }

}
登录后复制

以上就是Java中传递和返回对象的实例代码的详细内容,更多请关注php中文网其它相关文章!

智能AI问答
PHP中文网智能助手能迅速回答你的编程问题,提供实时的代码和解决方案,帮助你解决各种难题。不仅如此,它还能提供编程资源和学习指导,帮助你快速提升编程技能。无论你是初学者还是专业人士,AI智能助手都能成为你的可靠助手,助力你在编程领域取得更大的成就。
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
关于CSS思维导图的课件在哪? 课件
凡人来自于2024-04-16 10:10:18
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2024 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号