重拾java基础(九):抽象类、接口总结

一、final关键字

1. 可以修饰类、属性、方法
2. 修饰类:最终的类 
final class  Pet{

}
3. 修饰属性:属性的值不能修改    final修饰的属性必须人工赋值   PI
4. 修饰方法:该方法不能被重写
5. final类中的所有方法都默认为final

二、抽象类

1. Pet  Dog  Cat  没有现实意义
2. 父类充当的只是一个代码模版
3. abstract,抽象,关键字
4. 修饰类
  abstract class Pet{  //抽象类
  }
5.抽象类不能实例化   实例==对象  创建对象的过程就叫实例化
6.一个类变成了抽象类后,对类中的成员有影响?
  a.属性   无变化
  b.构造方法    无变化
  c.get/set方法   无变化
  d.普通功能方法   无变化
7. 建议以后凡是父类都改为抽象类,抽象父类

三、抽象方法

1. 可以修饰方法,父类中的功能方法一般都可以改为抽象方法
2. 特点
    a.不能有方法体
    b.抽象方法必须出现在抽象类中
    c.抽象方法必须被重写
3. 抽象类中既可以有普通方法,也可以有抽象方法
4. 建议把父类中的功能方法改为抽象方法
5.抽象关键字abstract不可以和哪些关键字共存?
    final:如果方法被抽象,就需要被重写,而final是不可以被重写,所以冲突。
    private:如果方法被私有了,子类无法继承,怎么重写呢。
    static : 不需要对象,通过类名就可以调用抽象方法,而调用抽象方法没有意义

四、初步理解接口

1. 在现实生活中,啥是接口?水管接口   插座  USB接口
2. 作用类似,起了一个名字"接口"
3. 作用
   a. 保证可扩展性和可维护性,接口是多态的一种表现形式  (USB接口)
   b. 实战应用:统一标准和规范    (USB接口)
4. 在Java中,接口到底是啥?接口本质是一个更特殊的抽象类
5. 定义一个接口:interface = abstract class
6. 继承接口的类不叫子类,叫实现类,extends 换成 implements
7. 接口跟抽象类相比,更特殊的地方:
   a. 接口不能实例化,不能有构造方法
   b. 接口中的属性全部都是public static final修饰的,不写会自动添加
   c. 接口中的方法必须全部都是抽象方法,会自动添加public abstract关键字
   d. 一个类可以实现多个接口
   e. 接口之间就可以多继承
   f. 接口没有继承Object类

五、接口是多态的一种表现形式

1. 作用:保证程序具有良好的可扩展性和可维护性
2. 接口的向上转型写法:  接口名  对象名=new 实现类();
3. 应用场景:
   a. 如果被动方需要使用属性,那么就只能用继承-多态
   b. 如果被动方不需要使用属性,或者重点关注的是功能(方法),那么应该使用接口
   案例:更换不同的加密算法(A公司需要加密数据,刚开始用的B公司提供的算法,
             后来发现该算法容易被破解,然后换成C公司的加密算法... ...)

六、关系-小结

1. 类和类          继承   单一继承、多层继承
2. 接口和接口      继承   多继承
3. 类和接口        实现   多实现
4. class A  extends B  implements C,D

七、接口的实际应用

接口就是一个标准或规范,用来统一各方的方法命名
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值