[問題] 繼承與物件使用的問題?

看板java作者 (henry)時間12年前 (2013/05/19 11:02), 編輯推噓1(106)
留言7則, 5人參與, 最新討論串1/13 (看更多)
各位好 請問各位一個問題 我宣告了一個class A public class A { } 然後又宣一個class B 繼承 A public class B extends A { } 因為還有其他class也繼承A,所以我在其他class宣告的時候這樣寫 public class Main { //用A來宣告物件,當new時才決定物件型態 private A myObject; public function() { myObject = new B(); 這個時候問題來了...... 假如我在Class B中寫了一個public String myString = "123"; 可是myObject.myString會錯誤,好像找不到myString的樣子 我一定要把myString寫在Class A裡面 才有辦法使用myObject.myString 因為我還有其他Class繼承Class A,但每個繼承的Class又希望有自己的物件 然後我想要宣告一個全域變數,在我想要的地方在把它宣告成我要的物件 我有辦法在各自繼承Class A的Class內寫自己的物件並且使用這種宣告方式來 存取各自的物件嗎? 或者有其他的方法可以達成我想要的需求?感謝各位大大解答了... } } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 123.194.97.175

05/19 12:29, , 1F
看看"深入淺出-設計模式"的第一章~應該就會有答案了...
05/19 12:29, 1F

05/19 12:55, , 2F
==.=== 我覺得這樣子根本不能湊在一個家族裡耶?
05/19 12:55, 2F

05/19 15:56, , 3F
請原PO看那章~不是要湊耶~是要理清觀念~光是全域變數要在
05/19 15:56, 3F

05/19 15:58, , 4F
不同的繼承類別裡宣告成各自的物件就是一件很奇怪的事...
05/19 15:58, 4F

05/19 19:53, , 5F
程式認為那是A(雖然實際上是B) A沒有的方法自然找不到
05/19 19:53, 5F

05/19 20:00, , 6F
謝謝提示,我在去仔細看看
05/19 20:00, 6F

05/20 13:00, , 7F
宣告 跟 實際 是不一樣的~你把這兩個搞混了
05/20 13:00, 7F
文章代碼(AID): #1Hc42hVT (java)
討論串 (同標題文章)
以下文章回應了本文 (最舊先):
完整討論串 (本文為第 1 之 13 篇):
文章代碼(AID): #1Hc42hVT (java)