黑马程序员技术交流社区

标题: static关键字 [打印本页]

作者: Observer    时间: 2016-8-5 22:46
标题: static关键字
今天课程static关键字的运用学的比较模糊,
今天试了下用static修饰构造方法,编译失败了,为什么不能用来修饰构造方法,
有参的构造方法我觉得是应为关键this,单独试了下无参的构造方法也是编译不通过

作者: Frankle    时间: 2016-8-6 10:06
构造方法是生成对象时由JVM自动调用的
作者: aliali007    时间: 2016-8-6 11:59
static修饰的变量和方法是类相关的,不是与类的实例相关。
构造函数是用来创建实例,即是实例相关的。因此static关键字不能用于修饰构造器,static修饰的类成员属于整个类,不属于单个实例。
你可以想想看,如果构造器真的可以用static修饰,是不是代表通过类的构造器构造出来的对象都是一样的?但是实际上,通过构造器构造出来的对象都是不一样的(使用==进行比较返回的都是false)。
作者: zhangjiesss    时间: 2016-8-6 17:18
static修饰成员,随类的加载而加载的,而对象是在类创建之后
作者: haizi004    时间: 2016-8-6 20:21
Frankle 发表于 2016-8-6 10:06
构造方法是生成对象时由JVM自动调用的

你说的应该是构造代码块




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