java接口和抽象类

首先,我们先确定接口不是类,而是对类的一组需求描述,这些类要遵从接口描述的统一格式进行定义。
在Java中类只能单继承,而接口可以多实现。
接口技术主要用来描述类具有什么功能,而不给出每个功能的具体实现,这又和抽象类有点像。总的来说,接口和抽象类都是只定义不实现的。下面我们来看看接口和抽象的具体定义。

接口

** “如果类遵从某个特定接口,那么就履行这项服务”也就是说任何实现像Comparable接口的类都需要包含comparaTo方法,并且这个方法的参数必须是一个object对象,返回一个整形数值。**

    接口中的所有方法自动的属于public,也就是说在接口中说明方法时,不需要加public。
    接口关键字:interface(接口),implements(实现)
为了让类实现一个接口,通常步骤:

  • 将类声明为实现给定的接口
  • 对接口中的所有方法进行定义
接口的特性
- 接口不是类,不能使用new运算符来实例化接口。但可以声明接口的变量:Comparable x;(Comparable 是一个接口)
- 接口中不能包含实例域或静态方法,但可以包含常量。
- 接口侧重于封装
- 接口可以多实现

抽象类

当一个类中含有抽象方法时,这个类就是抽象类,(就算类中没有抽象方法,也可以声明为抽象类)抽象类产生的目的就是被继承。抽象类一般不包含具体实现方法,它的具体实现在子类中。
扩展抽象类有两种选择:
    1.在抽象类中定义部分抽象类方法或不定义抽象类方法,这样子类也得标记成抽象类。
    2.在抽象类中定义全部的抽象方法,这样子类就不是抽象类了。
抽象类的特性
- 抽象类也不能实例化,但可以定义抽象类的对象变量,并且只能引用非抽象子类的对象:Person p=new Student();(Student是抽象类Person的子类)。
- 抽象类侧重于抽象
- 抽象类只能单继承
总之,接口是对功能的描述,就像人拥有跑的功能,这就可以用接口来声明; 而抽象类是对整体的描述,就像学生是人,人拥有的特征,学生都有。人就是一个抽象类
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值