1. 程式人生 > 其它 >JavaSE-22.2.2【介面中靜態方法(JDK8更新)】

JavaSE-22.2.2【介面中靜態方法(JDK8更新)】

 1 package day13.lesson2;
 2 
 3 /*
 4 2.2 介面中靜態方法
 5     格式
 6         [public] static 返回值型別 方法名(引數列表) { }
 7     範例
 8         [public] static void show() {
 9         }
10     注意事項
11         靜態方法只能通過介面名呼叫,不能通過實現類名或者物件名呼叫
12         public可以省略,static不能省略
13  */
14 public class InterDemo {
15     public
static void main(String[] args) { 16 Inter i = new InterImpl(); 17 i.show(); 18 i.method(); 19 20 // i.test(); //編譯異常 21 // InterImpl.test; //編譯異常 22 //歧義:當InterImpl實現兩個介面時,編譯器不知道物件i要呼叫Inter中的test還是Flyable中的 23 24 Inter.test(); //ok 25 Flyable.test(); //
ok 26 } 27 } 28 29 interface Inter{ 30 //抽象方法 31 void show(); 32 33 //預設方法 34 default void method(){ 35 System.out.println("介面Inter中的預設方法method"); 36 } 37 38 //靜態方法 39 /*public static void test(){ 40 System.out.println("介面Inter中的靜態方法test"); 41 }*/ 42 static
void test(){ 43 System.out.println("介面Inter中的靜態方法test"); 44 } 45 } 46 47 class InterImpl implements Inter, Flyable{ 48 @Override 49 public void show() { 50 System.out.println("實現類InterImpl重寫介面Inter中的抽象方法show"); 51 } 52 } 53 54 interface Flyable{ 55 static void test(){ 56 System.out.println("介面Flyable中的靜態方法test"); 57 } 58 }