黑马程序员技术交流社区

标题: 接口和抽象类 [打印本页]

作者: Especially丶    时间: 2015-6-26 23:05
标题: 接口和抽象类
接口和抽象类有什么区别呢,大神求解啊!!
作者: jlnu_wl    时间: 2015-6-27 08:43
抽象类:
当多个类中出现了相同功能,但是功能主体不同,
这时可以向上抽取,这时只抽取功能定义,不抽取功能主体。
特点:1.抽象方法一定定义在抽象类中。
          2.抽象方法和抽象类都必须被abstarct关键字修饰
      3.抽象类不可用new创建对象,因为调用抽象方法没意义。
4.抽象类的方法要被使用,必须有子类复写其所有的抽象方法后,建立子类对象调用。如果子类只覆盖了部分抽象方法,那么该子类还是一个抽象类。
抽象类和一般类没有太大的区别,该如何描述事物就如何描述事物,只不过该事物中出现了一下看不懂的东西,这些不确定的部分也是该事物的功能需要明确出来,但是无法定义出体。
通过抽象方法来表示。
抽象类比一般类多了抽象函数,就是在类中可以定义抽象方法。不可以实例化。
什么是模板方式?
就是在定义功能时,功能的一部分是确定的,但是有一部是不确定的
而确定的部分在使用不确定的部分,那么这时就将不确定的部分写成抽象函数。
接口:
接口:可以认为是一个特殊的抽象类,当抽象类中的方法都是抽象的,那么该类可以
通过接口的形式来表示。
class 用于定义类
interface 用于定义接口
接口在定义时的格式特点:
1.接口中常见定义:常量,抽象方法
2.接口中的成员都有固定修饰符:
     常量:public static final
         方法:public abstract
接口中的成员都是public 的
接口:是不可创建对象的,因为有抽象方法需要被子类实现,子类对接口中的抽象方法全都
覆盖后,子类才可以实例化,否则子类仍是一个抽象类。
接口可以被类多实现,也是对多继承不支持的转换形式,Java支持多实现。
接口的特点:(1)接口是对外暴露的规则
(2)        接口是程序的功能扩展
(3)        接口可以用来多实现
(4)        类与接口直接是实现关系,而且类可以继承一个类的同时实现多个接口
(5)        接口与接口直接可以有继承关系

作者: Especially丶    时间: 2015-6-28 00:01
jlnu_wl 发表于 2015-6-27 08:43
抽象类:
当多个类中出现了相同功能,但是功能主体不同,
这时可以向上抽取,这时只抽取功能定义,不抽取功 ...

谢谢:loveliness:




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2