就像標題所說,如果我有多個構造函數(這不是很好的練習),它們中的哪個被調用?如果一個類有多個構造函數,它們被調用了哪個?
-3
A
回答
0
你從哪裏聽說這是不好的做法?
你只能有一個構造具有一定的參數列表順序,使被稱爲一個是你已經通過參數指定的一個
public class Test {
public Test() {...}
public Test(String str, int x) {...}
}
說以後你叫:
Test test = new Test("Hello", 46);
被調用構造函數是這個:
public Test(String str, int x) {...}
其中字符串"Hello"
和46
分別通過str
和x
。
0
什麼編程語言? 一切都取決於語言。例如,對於德爾福來說,必須有多個構造函數纔是有效的。即使使用相同的名稱和不同的參數(數量和類型)。在這種情況下,建設者應該超載。
constructor TMyClass.Create overrride;
begin
// Code here
end;
constructor TMyClass.Create(Value: integer); override;
begin
// Code here
end;
constructor TMyClass.Create(Value1: integer; Value2: string); override;
begin
// Code here
end;
編譯器自己知道哪個將要運行。 事實上,它甚至法律要做到這一點:
constructor TMyClass.Create(Value3: double);
begin
Create(Random (9), 'Hello');
end;
即調用彼此。
編譯器的魔力決定了什麼時候執行,什麼必須執行。而且我知道這是所有的LOO。 ;)
相關問題
- 1. 調用多個超類構造函數
- 2. 我與另一個構造函數調用構造函數有一個錯誤
- 3. 我們可以調用一個類的構造函數嗎?
- 4. 在另一個類中調用一個類的構造函數
- 5. 一個單獨的類的構造函數被調用兩次
- 6. C++一個類的默認構造函數調用另一個類的另一個默認構造函數
- 7. 當一個構造函數被顯式調用時,是否構造了構造函數和成員變量?
- 8. 確定一個構造函數調用其基類的構造
- 9. 哪個構造函數被調用下面的代碼
- 10. 這裏調用了哪個std :: string構造函數?
- 11. 這裏調用了哪個構造函數?
- 12. VB.NET - 調用多個構造函數
- 13. 有一個子類的構造函數
- 14. 爲什麼LocationListener有一個構造函數,如果它是一個接口?
- 15. 從另一個構造函數調用默認構造函數
- 16. 爲什麼構造函數被調用,如果類有一個方法(函數)與他的名字?
- 17. 使用反射來確定哪個基類構造函數被調用
- 18. 爲什麼構造函數被調用,如果他們沒有被繼承?
- 19. 一個拷貝構造函數調用
- 20. 如果我有一個構造函數需要一個文件路徑,如果它被打包到一個jar文件中,我該如何「僞造」它?
- 21. 具有多個構造函數參數值或多個類的單個類?
- 22. 如果我調用自己的無參數構造函數,將調用多少個構造函數?
- 23. 當春豆被加載,如果我有一個構造函數和setter哪一個會先叫什麼名字?
- 24. 如何在javascript中調用另一個類的構造函數
- 25. 初始化一個類,如果它在其構造函數中有一個Interface作爲參數?
- 26. 當我定義一個具有該類的非引用返回類型的函數時,哪一個類的默認或複製構造函數被調用?
- 27. 一個類的多個構造函數問題
- 28. 檢查類構造函數是否擴展了另一個類
- 29. ponylang:在另一個構造函數中調用構造方法?
- 30. EasyMock:在java中構造一個構造函數調用
用什麼語言?通常情況下,它會是簽名與您傳入的參數相匹配的人。 – JLRishe 2015-03-08 18:56:23