[英]Interface whose methods signature refer to an abstract class implementing that interface
我根本不是 JAVA 專家,但我發現以下代碼片段運行。
interface Arithmetic {
MyNumber somma(MyNumber b);
MyNumber sottrai(MyNumber b);
MyNumber moltiplica(MyNumber b);
MyNumber dividi(MyNumber b);
}
abstract class MyNumber implements Arithmetic{
}
public class Test{
public static void main(String[] args)
{
System.out.println("It works");
}
}
現在在 C++ 中,如果你進行前向聲明,你可以做類似的事情,在 Java 中沒有這樣的事情(據我所知)所以我不明白如何才能很好地編譯算術,盡管我的MyNumber
實際上是在算術之后聲明的。 是否有 Java 的技術性解釋這一點?
Java 編譯發生在多個階段,其中一個階段查找所有聲明的 class 符號,稍后階段填充所有類的成員(除了已經找到的嵌套 ZA2F2ED4F8EBC2CBB4C21A29DC40AB6DZ 符號)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.