[英]Java sample Output Program
我用Java編寫了一個帶有2個接口和一個類的程序。
兩個接口具有相同的方法名稱。
在主類中,我同時實現了接口和方法。 我想知道哪種接口方法被稱為...
這是示例代碼:-
public interface A {
void print();
}
public interface B {
void print();
}
public class C implements A, B {
public static void main(String[] args) {
C c = new C();
c.print();
}
public void print() {
System.out.println("sample");
}
}
public interface A {
void print();
}
public interface B {
void print();
}
在上面的代碼中,接口A
和B
是抽象接口,因為某些/所有方法都已聲明但未定義。
因此,在您的C
類中,您不會調用這兩者中的任何一個(這很簡單,您將如何調用從未定義的方法?) 。 您正在做的是定義print
方法(因此將其命名為主體),然后再調用它(在main
)。
您調用類的方法
public void print() {
// TODO Auto-generated method stub
System.out.println("sample");
}
這是C
的print()
。 abstract
方法本身沒有實現,也沒有被調用,這是被稱為實現的一種。
您可能需要研究所謂的靜態綁定和動態綁定。 在這種情況下,對於編譯器和運行時,一切都在編譯時進行,因此采用前者。 基本上,將靜態確定要調用的方法/實現是C
的print()
。
動態綁定仍然意味着要調用方法的具體實現,因此它本身不會選擇接口方法,但是將在運行時選擇要調用的方法。
首先以該接口的方法將要調用的方式實現的接口,並且如果第一個接口旁邊的另一個接口具有完全不會調用的相同方法名。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.