Re: [問題] 新手reference variable一問

看板java作者 (LaPass)時間11年前 (2012/10/22 09:09), 編輯推噓1(102)
留言3則, 2人參與, 最新討論串1/3 (看更多)
因為 Dog myDog = new Dog () 是三個動作 未來你可能看到: 直接new一隻狗當變數 kill(new Dog()); 宣告變數,但是不賦值 Dog mydog; new別的東西賦值到不同東西上 Animal animal = new Dog(); 宣告變數,但是值是從別的地方來的 Dog mydog = Animal.getDog(); ※ 引述《vincewen (Zafe)》之銘言: : 最近剛接觸java : 對於參考變數的宣告有些疑問 : Dog myDog = new Dog () : 書上說這個步驟牽涉了 宣告、建構、指派 : 請問這一段程式碼中 : 頭一個Dog 尾巴又一個Dog : JAVA語法設計的理由是什麼 : 為什麼不Dog myDog 或Dog myDog = new : 問題有點菜 請多包涵 感謝回答>"< -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.59.16.65

10/22 09:18, , 1F
Animal animal = new Dog()那animal類別是Dog or animal?
10/22 09:18, 1F

10/22 21:20, , 2F
animal物件因為你用Animal宣告,所以只能用Animal的行為
10/22 21:20, 2F

10/22 21:22, , 3F
除非你將animal轉型為Dog,然後animal實際是Dog類別的物件
10/22 21:22, 3F
文章代碼(AID): #1GX9pP2f (java)
文章代碼(AID): #1GX9pP2f (java)