JAVA 抽象与接口

 
================
              抽象
================
抽象的概念
  1. 抽象类不能被直接实例化,只有他的非抽象子类才可以被实例化。
  2. 抽象类中不一定有抽象方法,抽象方法一定在抽象类中。
  3. 抽象方法只有方法头,没有方法体。
  4. 构造方法和类方法(static修饰的方法)不能声明为抽象方法
  5. 抽象类的子类必须给出抽象类的所有方法的具体实现,除非子类也是抽象类。
  6. abstract不能和private/static/final一起使用。

抽象的意义
规定实现方法的统一接口

===============
             接口
===============
接口的概念
一个全部由抽象方法组成的,用implements修饰的,方法和变量的集合,叫做接口。

在使用接口过程中的注意点:
  1. 一个类可以实现多个接口,实现接口的类,必须重写接口中所有成员方法。
  2. 接口中的变量,都是最终的静态变量。(final,static)
  3. 接口没有构造函数,不能创建实例,没有提供方法的实现。
  4. 接口不是类,可能有点绝对,但至少可以说是不是class衍生出来的类。
================
抽象类和接口的区别
================
  1. 接口用interface来定义的,抽象类是class;
  2. 接口中的方法都是抽象方法,抽象类中的方法不一定,可以有,也可以没有;
  3. 接口采用多重继承机制,抽象类采用单一的继承机制;
  4. 抽象类表示的是一种继承关系,接口表示的是功能,二者在问题域的理解上。








评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值