首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

面试中涉及java SE的几大块有关问题续1

2012-12-24 
面试中涉及java SE的几大块问题续1当然,如果事情足够复杂,在ABC剩下的事务中可能是围绕一件事E进行多个实

面试中涉及java SE的几大块问题续1
当然,如果事情足够复杂,在ABC剩下的事务中可能是围绕一件事E进行多个实现,那么ABC去implements这个E接口进行不同实现。E是别人提供的一个接口,实现了E就意味着主动接受了外部E的契约。
所以最终的代码就写成:  public A extends X implements E(){...}
此外,还有一些观点:

1,interface关注的是外部的使用者,对外指定一种规则,而Abstract Class是针对类自身的,是对内部变化的一种封装。
2,abstract class表示“is-a”的关系,即父类与继承类本质上一致的;
对于interface,并不要求interface的实现者和interface定义在概念本质上是一致的, 只表示一种契约关系,可以将interface看成“like-a”或者“has-a”的关系。

举例来说:电视机、收音机同属电器,具有打开,关闭,调台的方法;同时电视机、收音机都有遥控器(收音机带遥控器的好像不多!)。类结构如下:

abstract class 电器{       public void 打开(){}       public void 关闭(){}       public void 调台(){}}interface 遥控器{      void 遥控();}class  电视机 extends 电器 implements 遥控器{}class  收音机 extends 电器 implements 遥控器{}


3,再来一例,对照总结:

public class IPad extends device implements Bluetooth implements Wifi implement Tourch{   }public class IPhone extends device implements Wifi implements touch {   }public class IPod extends device implements Bluetooth {   }

热点排行