javaSE_8系列博客——Java语言的特性(五)--接口和继承(4)--使用接口作为类型

来源:互联网 发布:世熙传媒 知乎 编辑:程序博客网 时间:2024/06/05 06:26

定义新接口时,您将定义新的引用数据类型。您可以在任何可以使用任何其他数据类型名称的地方使用接口名称。如果定义类型为一个接口的引用变量,则分配给它的任何对象必须是实现该接口的类的实例。 作为一个例子,这里是一个找到一对对象中最大对象的方法,对于从实现的类中实例化Relatable的任何对象。

public Object findLargest(Object object1, Object object2) {   Relatable obj1 = (Relatable)object1;   Relatable obj2 = (Relatable)object2;   if ((obj1).isLargerThan(obj2) > 0)      return object1;   else       return object2;}

通过将object1转换为Relatable类型,可以调用isLargerThan方法

如果您在各种类中实现Relatable,则可以将任何类中实例化的对象与findLargest()方法进行比较 - 只要两个对象都是同一个类。同样,他们都可以与以下方法进行比较:

public Object findSmallest(Object object1, Object object2) {   Relatable obj1 = (Relatable)object1;   Relatable obj2 = (Relatable)object2;   if ((obj1).isLargerThan(obj2) < 0)      return object1;   else       return object2;}public boolean isEqual(Object object1, Object object2) {   Relatable obj1 = (Relatable)object1;   Relatable obj2 = (Relatable)object2;   if ( (obj1).isLargerThan(obj2) == 0)      return true;   else       return false;}

这些方法适用于任何“可关联”对象,无论它们的类继承的是什么。当它们实现Relatable 时,它们可以是自己的类(或超类)类型和可相关类型。这给了他们多重继承的一些优点,他们可以从超类和接口中获得行为。

阅读全文
0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 买了退市的股票怎么办 国际e庄租期到了怎么办 被汉藏文化骗了怎么办 杏仁吃多了中毒怎么办 出轨怀孕了该怎么办呢 瑞安医保卡丢了怎么办 包裹一直在揽收怎么办 揽收超时的快件怎么办 快递被别人偷了怎么办 行驶证副本丢了怎么办 眼睛进了石灰粉怎么办 高铁网上没票了怎么办 限行尾号是字母怎么办 手指被刺扎肿了怎么办 手上进了小刺怎么办 招投标标书丢了怎么办 冒险岛2装备红了怎么办 宝宝屁股腌红了怎么办 宝宝肛门红痒怎么办啊 宝宝屁屁溃烂了怎么办 脸过敏起红疙瘩怎么办 一岁宝宝屁股红怎么办 屁眼肉凸出来了怎么办 陶笛声音变闷了怎么办 吃三七粉上火了怎么办 红枣核吞下去了怎么办 话梅核吞下去了怎么办 芒果和海鲜吃了怎么办 小孩咳嗽喉咙有痰怎么办 4岁宝宝喉咙有痰怎么办 20天新生儿有痰怎么办 孩子嗓子老是有痰怎么办 买的哈密瓜不甜怎么办 吉他琴颈变形了怎么办 hcg值长得慢怎么办 蚊子老在耳边叫怎么办 刚买来的鲜海参怎么办 天冷手指关节疼怎么办 未满一年驾龄上高速违章怎么办 榴莲太生剥开了怎么办 榴莲开了没熟怎么办