黑马程序员技术交流社区

标题: Java匿名构造方法 [打印本页]

作者: 付家辉    时间: 2015-3-13 16:42
标题: Java匿名构造方法
Java匿名构造方法与静态代码块的区别,写法。
作者: hamesksk    时间: 2015-3-13 16:54
JAVA没有匿名构造方法。。。。。。构造方法必须是类名
作者: Dark县令    时间: 2015-3-13 17:59
JAVA应该是没有一种叫匿名构造方法的函数,只有一种匿名内部类。例如:
public class Parcel6 {
        public Contents cont() {
                return new Contents() {
                     private int i = 11;
   
                     public int value() {
                            return i;
                     }
              }; // 在这里需要一个分号
        }
   
        public static void main(String[] args) {
                Parcel6 p = new Parcel6();
                Contents c = p.cont();
        }
}

而静态代码块
class ...
{
       static
       {
       .......
       ........
       ........
       }
}
在这个类第一次被调用或实例化的时候就会被执行。
静态代码块只会执行一次,一般会用来初始化一些值,并且在所有对象中全局共享。
就像Car中颜色和内部零件不同但是他们都是四个轮胎一样,那么轮胎就可以写在里面!
作者: 梅西    时间: 2015-3-13 18:39
http://www.cnblogs.com/sophine/p/3531282.html 这个帖子可以看一看
作者: android-liu    时间: 2015-3-14 03:15
你说的是构造代码块把
作者: ㏒假™面具    时间: 2015-3-14 04:13
你说的是构造代码块吧? 与静态代码块的区别就是一个用static修饰,一个用
作者: 付家辉    时间: 2015-3-14 09:35
hamesksk 发表于 2015-3-13 16:54
JAVA没有匿名构造方法。。。。。。构造方法必须是类名

有,匿名构造方法必须在所有构造方法之前运行。操作:{   }
作者: 付家辉    时间: 2015-3-14 09:37
android-liu 发表于 2015-3-14 03:15
你说的是构造代码块把

不是,构造静态代码块是static{    };
匿名构造方法在类所有构造方法之前运行。即{    }




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