A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

构造代码块和静态代码块的区别,联系是什么?这段听的比较模糊。

10 个回复

倒序浏览
构造代码块:   {
         // 这里是 执行的语句体;   每次创建对象都会执行一次。
}
静态代码块:   static{
         // 也是 执行的语句体;  不管创建几次对象,都只执行一次。 还有静态优先于对象存在。
}

点评

静态优先于对象存在是什么意思?能具体说说或举例说明一下么??  发表于 2015-4-17 22:09
回复 使用道具 举报 2 0
这个是java还是android
回复 使用道具 举报
李健2016 来自手机 中级黑马 2016-6-27 10:09:53
板凳
黄晓蚁 发表于 2016-6-27 04:05
这个是java还是android

是JAVA基础课提过的东西
回复 使用道具 举报
构造代码块是用来给对象初始化的,每一次new对象 ,都会执行一次构造代码块。
静态代码块用来给类初始化的,随着类加载而加载,而且只加载一次。
回复 使用道具 举报
冰镇雪碧2014 来自手机 中级黑马 2016-6-28 13:06:20
地板
java基础课提到的,我们今天刚学哈
回复 使用道具 举报
15620608429 来自手机 中级黑马 2016-6-28 18:00:23
7#
静态代码是代码块中可以理解为级别最高的,首先执行,构造代码块优先构造方法
回复 使用道具 举报
云袭 中级黑马 2016-6-28 19:14:12
8#
加载类时会把类中静态成员一起加载,这时还没有创建对象,所以说静态优先于对象存在
回复 使用道具 举报
静态代码块,随着类的加载而加载,优先于构造代码块执行,而且只执行一次;构造代码块每次调用都执行,优先于构造方法执行.  代码块不是重点,理解就行,不用太花时间记
回复 使用道具 举报
sgnx 中级黑马 2016-6-28 23:11:13
10#
构造代码块实质是给对象进行初始化,是将构造方法中的共性内容提取出来写在构造代码块中,每次创建对象的时候都会执行并且优先于构造方法,从而提高代码复用性;而静态代码块是用来给类进行初始化,随着类的加载而加载一次,一般用来给静态成员变量进行赋值。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马