有参构造方法的作用和无参构造方法的作用
Java無參構造方法的作用
class Person{
private String name ; // 表示人的姓名
private int age ; // 表示人的年齡
public void tell(){ // 定義說話的方法
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() ; // 實例化對象
System.out.println(per.getName());
System.out.println(per.getAge());
}
};
隨便拷貝了一個代碼
問題:我知道結果會輸出
########
null
0
我們說構造方法(這里指的是有參的構造方法)的主要目的是為了類中的屬性初始化,那么無參構造方法的目的
是不是也是這樣呢?
并不是這樣的,而是因為子類繼承父類的時候會自動繼承默認的構造函數(這里指無參的構造函數)。而子類里面
已經有一個帶有參數的構造函數了,如果沒有寫那個默認的不帶參數的構造函數的話,繼承的時候就會報錯,因為系
統不知道要繼承哪個構造函數,必須明確的使用super()關鍵字來描述。所以一般為了避免這種錯誤的發生,在有帶多
個構造函數的類里面都會寫一個不帶參數的構造函數。
總結
以上是生活随笔為你收集整理的有参构造方法的作用和无参构造方法的作用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: EXCEL根据两点经纬度计算距离
- 下一篇: 【MAVEN】maven仓库搜索功能