2015-4-23
Java构造器
与类名同名;无返回值(void也不行);被不同的修饰符修饰是有区别的;当构造函数被private修饰时,只有本类可访问。其他类可以通过该类的get函数得到对象。如单子模式;子类的构造函数默认调用super(),即父类的构造函数,然后再回到子类自己的构造函数。子类的构造函数中写了super()效果也一样,相当于没写(只能写在第一句,否则出错);构造函数可以重载(当父类有多个构造函数时,可以用super(xxx)来指定调用父类的哪个构造函数);当自定义了构造函数后,系统就不自动生成构造函数了。所以最好为每个类写无参构造函数,以免出错;运行过程:有继承关系时,1>初始化父类的静态块和静态成员变量 2>初始化子类的静态块和静态成员变量 3>执行父类的构造函数 4>执行子类的构造函数;
单子模式,是指一段时间内该类的对象只存在一份。
如
1 //test.java 2 class ace{ 3 private static ace a; 4 private ace(){ 5 System.out.println("1"); 6 } 7 public static ace getAce(){ 8 if( null == a ){ 9 a = new ace(); 10 } 11 return a; 12 } 13 } 14 15 public class test{ 16 public static void main(String[] args) { 17 //ace a = new ace();错 18 ace b = ace.getAce(); 19 ace c = ace.getAce(); 20 21 if( b==c ) 22 System.out.println("equal"); 23 } 24 }
单子模式
时间: 2024-11-05 17:34:13