黑马程序员技术交流社区

标题: 关于this [打印本页]

作者: as9600    时间: 2016-3-18 23:13
标题: 关于this
在类中非静态方法中可以用this代表当前对象的引用,而静态方法不能使用是不是说非静态方法必须对象调用。
作者: Devilhunter    时间: 2016-3-19 00:17
静态方法可以两种调用方式,创建对象和直接用类名.方法名调用,非静态的应该只能用创建对象调用吧
作者: CangYe    时间: 2016-3-19 22:46
不是,因为静态方法会优先于对象存在于方法区中,所以如果静态方法中如果有非静态的成员会导致编译失败
作者: ameanboy    时间: 2016-3-19 23:17
this指向的是当前对象的引用(堆中),静态方法存在于方法区,是两个完全不同的区域,对此java设计的调用模式也不同
作者: xiongjin1991    时间: 2016-3-20 01:55
因为静态方法随着类的加载而加载,而this是代表当前对象的引用,那就是说静态方法在对象的前面,如果没有new对象,静态方法怎么去引用对象,这是一个先后问题。分析内存图,你就明了了。
作者: lijiy09    时间: 2016-3-20 10:23
静态成员变量和静态方法先于对象创建而存在




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2