日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

java接口有非抽象方法_如果一个类没有实现Java接口的所有抽象方法,会发生什么?...

發布時間:2023/12/15 java 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java接口有非抽象方法_如果一个类没有实现Java接口的所有抽象方法,会发生什么?... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Java中的接口類似于類,但是它只包含final和static的抽象方法和字段。

在單獨的類中,您需要實現此接口并為其所有抽象方法提供主體。

使用類實現接口后,必須向其所有抽象方法提供主體(實現),或者應將類聲明為抽象。如果您不這樣做,則會為每個未實現的方法生成一個編譯時錯誤,提示“ InterfaceExample不是抽象的,并且不會在interface_name中覆蓋抽象方法method_name”。

在下面的Java程序中,我們有一個名為MyInterface的接口和3個抽象方法,以及一個實現此接口的類,名為InterfaceExample。

在該類中,我們僅提供一種抽象方法(display())的主體。

示例import?java.util.Scanner;

interface?MyInterface{

public?void?display();

public?void?setName(String?name);

public?void?setAge(int?age);

}

public?class?InterfaceExample?implements?MyInterface{

int?age;

String?name;

public?void?display()?{

if(18?

System.out.println("Hello?"+this.name+"?welcome");

}?else?{

System.out.println("Under?age");

}

}

public?static?void?main(String?args[])?{

}

}

編譯時錯誤

在編譯上面的程序時會產生以下錯誤

輸出結果InterfaceExample.java:7:?error:?InterfaceExample?is?not?abstract?and?does?not

override?abstract?method?setAge(int)?in?MyInterface

public?class?InterfaceExample?implements?MyInterface{

^

1?error

要使該程序正常工作,您需要在類中實現所有抽象方法,或者聲明類abstract,如下所示-

示例import?java.util.Scanner;

interface?MyInterface{

public?void?display();

public?void?setName(String?name);

public?void?setAge(int?age);

}

public?class?InterfaceExample?implements?MyInterface{

int?age;

String?name;

public?void?display()?{

if(18?

System.out.println("Hello?"+this.name+"?welcome");

}?else?{

System.out.println("Under?age");

}

}

public?void?setName(String?name){

this.name?=?name;

}

public?void?setAge(int?age){

this.age?=?age;

}

public?static?void?main(String?args[])?{

Scanner?sc?=?new?Scanner(System.in);

InterfaceExample?obj?=?new?InterfaceExample();

System.out.println("輸入名稱:");

obj.setName(sc.next());

System.out.println("輸入年齡:");

obj.setAge(sc.nextInt());

obj.display();

}

}

輸出結果輸入名稱:

Krishna

輸入年齡:

25

Hello?Krishna?welcome

總結

以上是生活随笔為你收集整理的java接口有非抽象方法_如果一个类没有实现Java接口的所有抽象方法,会发生什么?...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。