您好,登錄后才能下訂單哦!
本篇內容介紹了“Java構造方法的定義和重載”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
一、構造方法的定義
(一)什么構造方法
實例化一個類的對象后,如果要給屬性賦值,需要通過訪問對象的屬性或setXXX()方法。在實例化對象后同時給對象的屬性賦值可以使用構造方法,構造方法也叫做構造函數。用來對對象進行初始化。
(二)構造方法特點
1.構造方法的名字必須和類名完全相同。
2.方法名前面沒有返回值,甚至連表示沒有返回值的空類型(void)也沒有。
3.在方法中不能使用return語句返回一個值。
4.構造方法一般定義是為public。
5.使用new運算符調用構造方法。
(三)如何在類中定義構造方法
例如:
public class Person { public String name; //成員變量--名字 public int age; //成員變量--年齡 //構造方法--方法名和類型是相同的,并且沒有返回值類型和返回值 public Person(String s, int a){ name = s; //為name屬性賦值 age = a; //為age屬性賦值 } //say()方法 public void say(){ System.out.println("你好!我是" + name + ",今年" + age + "歲。"); } public static void main(String[] args) { // TODO Auto-generated method stub Person p1 = new Person("李華", 20);//創建第一個對象 Person p2 = new Person("小名", 19); //創建第二個對象 p1.say(); //調用對象的方法 p2.say(); //調用對象的方法 } }
輸出的結果是:
你好!我是李華,今年20歲。
你好!我是小名,今年19歲。
首先是Person類定義了有參的構造方法Person(String s, int a)在new Person實例化對象時同時調用有參的構造方法,在有參的構造方法Person(String s, int a)給name和age屬性賦值。
二、構造方法的重載
1.構造方法的重載:在一個類中可以定義多個構造方法,只要每個構造方法參數類型或參數個數不一樣。
2.如何實現構造方法的重載
例如:
class Person{ public String name; public int age; //定義兩個參數的構造方法 public Person(String s,int a){ name=s; age=a; } //定義一個參數的構造方法 public Person(String s){ name=s; } //say()方法 public void say(){ //控制臺輸出name和age的值 System.out.println("你好!我是" + name + ",今年" + age + "歲。"); } } public class p16 { public static void main(String[] args) { // TODO Auto-generated method stub Person p1=new Person("李華");//創建第一個對象 Person p2=new Person("小名",19);//創建第二個對象 p1.say();//調用對象的方法 p2.say();//調用對象的方法 } }
輸出的結果是:
你好!我是李華,今年0歲。
你好!我是小名,今年19歲。
在上面代碼中,Person類中定義了兩個參數構造方法和一個參數構造方法,它們是構造方法的重載。在創建實例化對象,p1和p2因為傳入的參數的不同,調用的不同的構造方法。我們發現兩個構造方法給對象的屬性賦值不同,在給一個參數的構造方法中只是給name賦值的,此時的age屬性的值是默認為0的。
三、類和數組的使用
1.一個案例來分析類和數組的使用
例如:
public class Person5 { public String name;//姓名 public int age;//年齡 //say()方法 public void say(){ System.out.println("你好!我是" + name + ",今年" + age + "歲。"); } public static void main(String[] args) { // TODO Auto-generated method stub //創建數組 Person5[] students; students = new Person5[2]; //創建第一個對象z Person5 z = new Person5(); z.name = "張三";//給name屬性賦值 z.age = 18;//給age屬性賦值 //創建第二個對象l Person5 l = new Person5(); l.name = "李華";//給name屬性賦值 l.age = 20;//給age屬性賦值 //給數組賦值 students[0] = z; students[1] = l; //調用方法 l.say(); students[0].say(); } }
從上面的代碼中,定義個Person類,這個類中有成員變量name和age,還有一個say()方法。在主程序(main)方法中創建了數組,通過數組的下標為數組賦值,創建兩個對象分別給每個一個對象name屬性和age屬性賦值,最后調用Person類中的方法。
四、總結
本文主要介紹了構造方法、構造方法的重載、類和數組的使用。
構造方法介紹了在實例化對象后同時給對象的屬性賦值,構造方法的特點,通過一個案例類中如何定義構造方法來了解這個用法。
構造方法的重載在一個類中可以定義多個構造方法,只要每個構造方法參數類型或參數個數不一樣。
類和數組的使用通過一個簡單的案例來了解怎樣去使用。希望通過本文的學習,對你有所幫助!
“Java構造方法的定義和重載”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。