有参构造方法的作用和无参构造方法的作用
Java無(wú)參構(gòu)造方法的作用
class Person{
private String name ; // 表示人的姓名
private int age ; // 表示人的年齡
public void tell(){ // 定義說(shuō)話的方法
System.out.println("姓名:" + this.getName() + ",年齡:" + this.getAge()) ;
}
public Person(){
System.out.println("########");
}
public void setName(String n){
name = n ;
}
public void setAge(int a){
if(a>=0&&a<=200){
age = a ;
}
}
public String getName(){
return name ;
}
public int getAge(){
return age ;
}
};
public class OODemo10{
public static void main(String args[]){
Person per = new Person() ; // 實(shí)例化對(duì)象
System.out.println(per.getName());
System.out.println(per.getAge());
}
};
隨便拷貝了一個(gè)代碼
問(wèn)題:我知道結(jié)果會(huì)輸出
########
null
0
我們說(shuō)構(gòu)造方法(這里指的是有參的構(gòu)造方法)的主要目的是為了類中的屬性初始化,那么無(wú)參構(gòu)造方法的目的
是不是也是這樣呢?
并不是這樣的,而是因?yàn)樽宇惱^承父類的時(shí)候會(huì)自動(dòng)繼承默認(rèn)的構(gòu)造函數(shù)(這里指無(wú)參的構(gòu)造函數(shù))。而子類里面
已經(jīng)有一個(gè)帶有參數(shù)的構(gòu)造函數(shù)了,如果沒(méi)有寫那個(gè)默認(rèn)的不帶參數(shù)的構(gòu)造函數(shù)的話,繼承的時(shí)候就會(huì)報(bào)錯(cuò),因?yàn)橄?/p>
統(tǒng)不知道要繼承哪個(gè)構(gòu)造函數(shù),必須明確的使用super()關(guān)鍵字來(lái)描述。所以一般為了避免這種錯(cuò)誤的發(fā)生,在有帶多
個(gè)構(gòu)造函數(shù)的類里面都會(huì)寫一個(gè)不帶參數(shù)的構(gòu)造函數(shù)。
總結(jié)
以上是生活随笔為你收集整理的有参构造方法的作用和无参构造方法的作用的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: EXCEL根据两点经纬度计算距离
- 下一篇: 【MAVEN】maven仓库搜索功能