-
重载
java允许重载任何方法,因此,在描述一个方法时要指定方法名和参数类型,这种方法叫做签名,因为返回类型不是方法签名的一部分,所以不能有两个方法名和参数类型都相同但是返回类型却不同的方法
-
举例说明
add(int){ return int; } add(int,int){ return int; } //不可以这样使用 add(int,int){ return double; }
-
默认初始化
在构造器中如果没有显示的为变量设置初始值,那么会被自动赋值为默认值(0,false,null)
在创建类后,必须写一个构造器,如果只存在一个有参数的构造器,那么 直接new一个对象而不带参数的方法就是错误的
当类没有其他构造器的时候,可以得到一个默认的无参数构造器
-
举例说明
//仅有一个带参构造器 public Abc(String s,int n) new Abc(); //错误 new Abc(s,n); //正确 //同时存在两个构造器 public Abc(){} ; //代码块中没有代码则被赋予默认值 public Abc(String s,int n) new Abc(); //正确 new Abc(s,n); //正确
-
用this(...)调用另一个构造器
-
这样对公共的构造器代码只需要编写一次即可
class Abc { public static String s; public Abc(String s,int n){ ... }; public Abc(int n){ this("Abc #"+s,n); } }
-
-
初始化块
class Abc { private static int nextId; private int id; ... //初始化块 { id = nextId; nextId++; } //静态初始化块 static { var r = new Random(); //随机数 nextId = r.nextInt(1000); //随机一个小于1000的整数 } }
Java-对象构造
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...