欢迎来到天天文库
浏览记录
ID:37857981
大小:81.00 KB
页数:6页
时间:2019-06-01
《java中的return this问题》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、java中的returnthis问题returnthis;大家都知道,这是返回当前对象引用,我就很郁闷,这个有什么好返回的,返回给谁???假设返回给A,那A为什么不用前面创建对象的变量直接去访问,???补充:public class Leaf { int i = 0; Leaf increment() { i++; return this; } void print() { System.out.println("i = " + i); }
2、public static void main(String[] args) { Leaf x = new Leaf(); x.increment(); } } 输出结果是什么呢,难道是对象??????郁闷!我来回答窗体顶端窗体底端窗体顶端窗体底端回答(5)钟鹏辉 项目经理
3、1705个满意答案 2010-09-03返回当前类实例...相当于new了评论(0)00レ我心飛揚 2010-09-03这个问题就奇怪了,比如你吃饭有时用勺子用时要用筷子一样。如果A是一个私有类,在B中要用到A的
4、属性this就有用了,通过构造器评论(0)00迩的爱属于莪 2010-09-03 x.increment(); 返回自身也就是说x.increment()==x 比如你要连续调用 2次increment()一般的写法是 x.increment(); x.increment(); 但是因为方法返回自身的引用所以可以这样写 x.increment().increment(); 好好体会一下this的妙用 追问:returnthis的作用仅仅是x.increment(); x.increment();可以写成x.incr
5、ement().increment();吗???那也太花哨了吧 回答:如果你只认为它有这种作用那你就大错特错了虽然我也不知道怎么跟你讲但是既然return可以返回任何基本数据类型和任何对象的引用,当然也可以返回它自身的引用 纵观JDK,有很多类的方法都会返回其自身的引用像StringBuffer 当然要不要返回自身看场合论实际而不是一定要用评论(0)10正在输入 2010-09-03这个有点类似单列模式:单例模式就是某个类只存在一个对象(只new一次),当某个类的初始化比较耗时,耗资源的时候,比如加载某些配置文件hib
6、ernate,spring的配置文件等,一般会选择单例模式。一、懒汉式单例在类被加载的时候,唯一实例已经被创建。这个设计模式在Java中容易实现,在别的语言中难以实现。/***CreatedbyIntelliJIDEA.*User:leizhimin*Date:2007-9-11*Time:14:57:08*<>单例模式-懒汉式单例*/publicclassLazySingleton{ /** *私有静态对象,加载时候不做初始化 */ privatestaticLazySingl
7、etonm_intance=null; /** *私有构造方法,避免外部创建实例 */ privateLazySingleton(){ } /** *静态工厂方法,返回此类的唯一实例. *当发现实例没有初始化的时候,才初始化. *@returnLazySingleton */ synchronizedpublicstaticLazySingletongetInstance(){ if(m_intance==null){
8、 m_intance=newLazySingleton(); } returnm_intance; }}二、饿汉式单例在类加载的时候不创建单例实例。只有在第一次请求实例的时候的时候创建,并且只在第一次创建后,以后不再创建该类的实例。/***CreatedbyIntelliJIDEA.*User:leizhimin*Date:2007-9-11*Time:14:45:25*<>单例模式-饿汉式单例*/publicclassEagerSingleton{ /**
9、 *私有的(private)唯一(staticfinal)实例成员,在类加载的时候就创建好了单例对象 */ privatestaticfinalEagerSingletonm_instance=newEagerSingleton(); /** *私有构造
此文档下载收益归作者所有