這篇文章主要講解了Java中如何轉(zhuǎn)換父類和子類,內(nèi)容清晰明了,對此有興趣的小伙伴可以學(xué)習(xí)一下,相信大家閱讀完之后會有幫助。
創(chuàng)新互聯(lián)建站網(wǎng)站建設(shè)公司,提供成都做網(wǎng)站、成都網(wǎng)站建設(shè)、成都外貿(mào)網(wǎng)站建設(shè),網(wǎng)頁設(shè)計,建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);可快速的進行網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴展;專業(yè)做搜索引擎喜愛的網(wǎng)站,是專業(yè)的做網(wǎng)站團隊,希望更多企業(yè)前來合作!
一、父類引用強轉(zhuǎn)成為子類引用
package learn20180720; public class People { private String name; private Integer age; private Double height; public People(){ this.name = ""; this.age = 0 ; this.height = 0.0; } public People(String name, Integer age, Double height) { super(); this.name = name; this.age = age; this.height = height; } public String getName() { return name; } public void setName(String name) { this.name = name; } public Integer getAge() { return age; } public void setAge(Integer age) { this.age = age; } public Double getHeight() { return height; } public void setHeight(Double height) { this.height = height; } public void tellObjectName(People p) { System.err.println(p.name); } public void sayInformation() { System.err.println("我的名字叫做:"+this.name+"我的年齡是:"+this.age+"我的身高是"+this.height); } }
package learn20180720; public class Chinese extends People{ private String country; public Chinese(){ super(); country = ""; } public Chinese(String aname,Integer aage,Double aheight) { super(aname,aage,aheight); this.country = "中國"; } public String getCountry() { return country; } public void setCountry(String country) { this.country = country; } public void sayInformation() { // TODO Auto-generated method stub System.err.println("我的名字叫做:"+this.getName()+" 我的年齡是:"+this.getAge()+" 我的身高是:"+this.getHeight()+" 我的國家是:"+this.country); } }
package learn20180720; public class TestPeCh { public static void main(String[] args) { // TODO Auto-generated method stub People p1 = new Chinese(); Chinese c1 = (Chinese)p1; } }
可以看到,p1無法訪問子類中的特有的方法(父類引用可以訪問子類中重寫父類中的方法),但是強轉(zhuǎn)成為子類類型的引用c1之后,c1就可以訪問子類中所有的方法啦。
package learn20180720; public class TestPeCh { public static void main(String[] args) { // TODO Auto-generated method stub People p1 = new People(); Chinese c1 = (Chinese)p1; } }
報錯了!
看完上述內(nèi)容,是不是對Java中如何轉(zhuǎn)換父類和子類有進一步的了解,如果還想學(xué)習(xí)更多內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。