踐教學(xué)平臺(tái):Java面向?qū)ο?類與對(duì)象(二))
第2關(guān)構(gòu)造方法任務(wù)描述本關(guān)任務(wù)創(chuàng)建對(duì)象給對(duì)象定義無(wú)參構(gòu)造方法和有參構(gòu)造方法。相關(guān)知識(shí)為了完成本關(guān)任務(wù)你需要掌握1.什么是構(gòu)造方法2.如何定義和調(diào)用構(gòu)造方法。什么是構(gòu)造方法構(gòu)造方法對(duì)象被創(chuàng)建的時(shí)候會(huì)調(diào)用的方法對(duì)象在被創(chuàng)建的時(shí)候也就是被new的時(shí)候會(huì)自動(dòng)調(diào)用構(gòu)造方法。舉個(gè)例子輸出我被調(diào)用了怎么定義和使用構(gòu)造方法怎么定義構(gòu)造方法呢構(gòu)造方法和我們之前學(xué)習(xí)的方法又有啥區(qū)別呢請(qǐng)看圖看出區(qū)別來(lái)了嗎好我來(lái)總結(jié)一下看你是否能在上圖中找出相對(duì)應(yīng)的代碼構(gòu)造方法可以有參數(shù)也可以無(wú)參數(shù)構(gòu)造方法無(wú)返回值也不需要聲明void關(guān)鍵字構(gòu)造方法名必須和類名相同。接下來(lái)我在main方法中創(chuàng)建Student對(duì)象代碼如下public static void main(String[] args){Student stu new Student();Student stu1 new Student(張三);}你覺(jué)得會(huì)有輸出嗎如果有那么輸出結(jié)果會(huì)是什么呢如果沒(méi)有那你覺(jué)得原因是什么呢編程要求根據(jù)提示在右側(cè)編輯器Begin-End處補(bǔ)充代碼:創(chuàng)建一個(gè)Person類給Person類定義一個(gè)無(wú)參構(gòu)造方法和一個(gè)有參構(gòu)造方法有參構(gòu)造方法定義兩個(gè)String類型參數(shù)name和sex在main方法中調(diào)用無(wú)參構(gòu)造和有參構(gòu)造方法調(diào)用無(wú)參構(gòu)造方法輸出一個(gè)人被創(chuàng)建了調(diào)用有參構(gòu)造方法應(yīng)根據(jù)輸入的數(shù)據(jù)輸出對(duì)應(yīng)的結(jié)果如輸入張三男則輸出姓名張三性別男被創(chuàng)建了。測(cè)試說(shuō)明測(cè)試輸入張富貴未知預(yù)期輸出一個(gè)人被創(chuàng)建了姓名張富貴性別未知被創(chuàng)建了總結(jié)對(duì)象的構(gòu)造方法對(duì)象在被創(chuàng)建的時(shí)候也就是被new的時(shí)候會(huì)自動(dòng)調(diào)用構(gòu)造方法。在構(gòu)造方法中可以做對(duì)象初始化操作有如下特征構(gòu)造方法與對(duì)象的方法不同它是在對(duì)象創(chuàng)建時(shí)自動(dòng)調(diào)用的構(gòu)造方法可以有參數(shù)也可以無(wú)參數(shù)構(gòu)造方法無(wú)返回值構(gòu)造方法名必須和類名相同如果定義的類沒(méi)有聲明構(gòu)造方法對(duì)象在創(chuàng)建時(shí)默認(rèn)使用空的構(gòu)造方法。開(kāi)始你的任務(wù)吧祝你成功package step2;import java.util.Scanner;public class Test {public static void main(String[] args) {Scanner sc new Scanner(System.in);String name sc.next();String sex sc.next();/********** Begin **********///分別使用兩種構(gòu)造器來(lái)創(chuàng)建Person對(duì)象Person p1new Person(name,sex);Person p2new Person();/********** End **********/}}//創(chuàng)建Person對(duì)象并創(chuàng)建兩種構(gòu)造方法/********** Begin **********/class Person{String name;String sex;public Person(){}public Person(String name,String sex){System.out.println(一個(gè)人被創(chuàng)建了);System.out.println(姓名name性別sex被創(chuàng)建了);}}/********** End **********/有任何問(wèn)題都可以隨時(shí)關(guān)注私信