电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

java 一個類實現兩個接口的案例

瀏覽:4日期:2022-08-23 11:52:03

直接用英文逗號分隔就可以了,比如:

inerface IHello { String sayHello(String name); }interface IHi { String sayHi(String name); } class ServiceImpl implements IHello, IHi {// 實現三個四個。。。n個接口都是使用逗號分隔public String sayHello(String name) { return 'Hello, ' + name; }public String sayHi(String name) { return 'Hi, ' + name; }}

補充知識:Java 一個類實現的多個接口,有相同簽名的default方法會怎么辦?

看代碼吧~

public interface A { default void hello() { System.out.println('Hello from A'); }}public interface B extends A { default void hello() { System.out.println('Hello from B'); }}public class C implements B, A { public static void main(String... args) { new C().hello(); }}

這段代碼,會打印什么呢?

有三條規則

類永遠贏。類聲明的方法,或者超類聲明的方法,比default方法的優先級高

否則,子接口贏

否則,如果集成自多個接口,必須明確選擇某接口的方法

上面代碼的UML圖如下

java 一個類實現兩個接口的案例

所以,上面的代碼,輸出是

Hello from B

如果這樣呢?

public class D implements A{ }public class C extends D implements B, A { public static void main(String... args) { new C().hello(); }}

UML圖是這樣的

java 一個類實現兩個接口的案例

規則1說,類聲明的方法優先級高,但是,D沒有覆蓋hello方法,它只是實現了接口A。所以,它的default方法來自接口A。規則2說,如果類和超類沒有方法,就是子接口贏。所以,程序打印的還是“Hello from B”。

所以,如果這樣修改代碼

public class D implements A{ void hello(){ System.out.println('Hello from D'); }}public class C extends D implements B, A { public static void main(String... args) { new C().hello(); }}

程序的輸出就是“Hello from D”。

如果D這樣寫

public abstract class D implements A { public abstract void hello();}

C就只能實現自己的抽象方法hello了。

如果是這樣的代碼呢

public interface A { default void hello() { System.out.println('Hello from A'); }}public interface B { default void hello() { System.out.println('Hello from B'); }}public class C implements B, A { }

UML圖如下

java 一個類實現兩個接口的案例

會生成這樣的編譯器錯誤

'Error: class C inherits unrelated defaults for hello() from types B and A.'

怎么修改代碼呢?只能明確覆蓋某接口的方法

public class C implements B, A { void hello(){ B.super.hello(); }}

如果代碼是這樣的,又會怎樣呢?

public interface A{ default void hello(){ System.out.println('Hello from A'); }}public interface B extends A { }public interface C extends A { }public class D implements B, C { public static void main(String... args) { new D().hello(); }}

UML圖是這樣的

java 一個類實現兩個接口的案例

很明顯,還是不能編譯。

以上這篇java 一個類實現兩個接口的案例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Java
相關文章:
主站蜘蛛池模板: 清水-铝合金-建筑模板厂家-木模板价格-铝模板生产「五棵松」品牌 | 无锡网站建设-做网站-建网站-网页设计制作-阿凡达建站公司 | 湖南专升本-湖南省专升本报名-湖南统招专升本考试网 | 集装箱标准养护室-集装箱移动式养护室-广州璟业试验仪器有限公司 | 论文查重_免费论文查重_知网学术不端论文查重检测系统入口_论文查重软件 | 会议会展活动拍摄_年会庆典演出跟拍_摄影摄像直播-艾木传媒 | 致胜管家软件服务【在线免费体验】 | 定时排水阀/排气阀-仪表三通旋塞阀-直角式脉冲电磁阀-永嘉良科阀门有限公司 | 实战IT培训机构_IT培训班选大学生IT技术培训中心_中公优就业 | 起好名字_取个好名字_好名网免费取好名在线打分 | 深圳侦探联系方式_深圳小三调查取证公司_深圳小三分离机构 | Copeland/谷轮压缩机,谷轮半封闭压缩机,谷轮涡旋压缩机,型号规格,技术参数,尺寸图片,价格经销商 CTP磁天平|小电容测量仪|阴阳极极化_双液系沸点测定仪|dsj电渗实验装置-南京桑力电子设备厂 | 萃取箱-萃取槽-PVC萃取箱厂家-混合澄清槽- 杭州南方化工设备 | 水稻烘干机,小麦烘干机,大豆烘干机,玉米烘干机,粮食烘干机_巩义市锦华粮食烘干机械制造有限公司 水环真空泵厂家,2bv真空泵,2be真空泵-淄博真空设备厂 | 上海电子秤厂家,电子秤厂家价格,上海吊秤厂家,吊秤供应价格-上海佳宜电子科技有限公司 | 汽液过滤网厂家_安平县银锐丝网有限公司 | 电气控制系统集成商-PLC控制柜变频控制柜-非标自动化定制-电气控制柜成套-NIDEC CT变频器-威肯自动化控制 | 别墅图纸超市|别墅设计图纸|农村房屋设计图|农村自建房|别墅设计图纸及效果图大全 | 环境模拟实验室_液体-气体控温机_气体控温箱_无锡双润冷却科技有限公司 | 洁净实验室工程-成都手术室净化-无尘车间装修-四川华锐净化公司-洁净室专业厂家 | 膜结构停车棚-自行车棚-膜结构汽车棚加工安装厂家幸福膜结构 | Eiafans.com_环评爱好者 环评网|环评论坛|环评报告公示网|竣工环保验收公示网|环保验收报告公示网|环保自主验收公示|环评公示网|环保公示网|注册环评工程师|环境影响评价|环评师|规划环评|环评报告|环评考试网|环评论坛 - Powered by Discuz! | 二手回收公司_销毁处理公司_设备回收公司-找回收信息网 | GAST/BRIWATEC/CINCINNATI/KARL-KLEIN/ZIEHL-ABEGG风机|亚喜科技 | 气密性检测仪_气密性检测设备_防水测试仪_密封测试仪-岳信仪器 | 山东风淋室_201/304不锈钢风淋室净化设备厂家-盛之源风淋室厂家 翻斗式矿车|固定式矿车|曲轨侧卸式矿车|梭式矿车|矿车配件-山东卓力矿车生产厂家 | 衡阳耐适防护科技有限公司——威仕盾焊接防护用品官网/焊工手套/焊接防护服/皮革防护手套 | 学叉车培训|叉车证报名|叉车查询|叉车证怎么考-工程机械培训网 | 找果网 | 苹果手机找回方法,苹果iPhone手机丢了找回,认准找果网! | 山东彩钢板房,山东彩钢活动房,临沂彩钢房-临沂市贵通钢结构工程有限公司 | lcd条形屏-液晶长条屏-户外广告屏-条形智能显示屏-深圳市条形智能电子有限公司 | 盘扣式脚手架-附着式升降脚手架-移动脚手架,专ye承包服务商 - 苏州安踏脚手架工程有限公司 | 玻璃钢型材_拉挤模具_玻璃钢拉挤设备——滑县康百思 | 国产离子色谱仪,红外分光测油仪,自动烟尘烟气测试仪-青岛埃仑通用科技有限公司 | 污水/卧式/潜水/钻井/矿用/大型/小型/泥浆泵,价格,参数,型号,厂家 - 安平县鼎千泵业制造厂 | 【灵硕展览集团】展台展会设计_展览会展台搭建_展览展示设计一站式服务公司 | 热工多功能信号校验仪-热电阻热电偶校验仿真仪-金湖虹润仪表 | 电动葫芦|防爆钢丝绳电动葫芦|手拉葫芦-保定大力起重葫芦有限公司 | HYDAC过滤器,HYDAC滤芯,现货ATOS油泵,ATOS比例阀-东莞市广联自动化科技有限公司 | 阴离子_阳离子聚丙烯酰胺厂家_聚合氯化铝价格_水处理絮凝剂_巩义市江源净水材料有限公司 | 预制围墙_工程预制围墙_天津市瑞通建筑材料有限公司 |