比方說,我有一段代碼:將子類的構造函數提供給父類的對象有什麼意義?
class one
{
String one = "First";
}
class sec extends one
{
String sec = "Second";
}
class num
{
public static void main(String[] args)
{
one o = new one();
sec s = new sec();
one oo = new sec();
// the object will be of that class for which we are providing the reference
// then what is the use of the constructor
sec s = new one(); // this is not working
System.out.println(o.one);
System.out.println(s.sec);
System.out.println(oo.one); # this seems right
System.out.println(oo.sec); # this is not working
}
}
我被參考和構造函數在創建對象混淆。 我已將sec
類擴展爲從類one
繼承。 我得到了我們引用one
類的前兩個對象創建的含義,併爲第二個對象創建了相同的對象。
但是第三個對象呢?我們正在使用第一類的引用並提供子類的構造函數,我可以使用第三個對象(oo)來引用一個類的變量和方法而不是第二類。
如果我必須使用一個類的方法和變量,那麼我可以將它與對象(o)而不是對象(oo)一起使用。那麼當兩個對象表現得像對方一樣時,兩個對象之間有什麼區別呢?
one o = new one();
one oo = new sec();
我想知道這兩個是什麼改變來當我們使用子類的構造函數,而不是基類之間的差異。
好的,我會看到謝謝先生:-) – babygame0ver
肯定會看看多態性。這也不是JAVA特有的。對於任何OOP你都會很有用。 – Tom
@AkshaySingh在發佈新問題之前,請在網站上搜索所有未來的問題。有可能你的問題已經被回答了。 – CKing