9final关键字、接口、接口和抽象类的异同、接口设计

# java 关联代码
oopday4-project5
## 介绍
java基础
#### final关键字
1 final 修饰局部变量 变成常量
2 final 修饰成员变量 
final 和staic 修饰的成员变量叫做静态常量,既不能修改又能直接访问,一般静态常量属性名的所有字母全部大写(命名规范)
3 final 修饰的方法为最终方法,不能被子类重写
  final 改成static也不能重写
4 final 修饰的类为最终类,不能被继承
#### 接口
接口:规范,如果你是,必须能
接口本身是抽象的存在,不能被实例化
接口中的成员变量都是公共的静态常量
接口中的方法都是公共的抽象方法
接口中没有构造方法
接口属于引用数据类型
接口不能被普通的类继承,接口只能被普通类实现
JAVA仅仅支持单继承,一个子类只能有一个直接父类
一个普通的java类可以同时实现多个接口
接口作为方法形参,其任何实现类对象就能作为方法实参
接口作为方法返回值,其任何实现类对象就可以作为结果返回
接口解决了java仅仅支持单继承的问题
只有接口能够继承接口
子接口的实现类要实现直接子接口和所有间接接口的抽象方法
#### 接口和抽象类的异同
相同:1都可以有抽象方法,都要求子类或者实现类重写,都是对子类或者实现类的规范
    2都不可以被实例化
不同:1抽象类是被子类继承,接口是被实现类实现
    2一个子类只能继承一个抽象类,但是一个实现类可以同时实现多个接口
    3抽象类中可以定义普通的成员变量,接口中只能定义公有的静态常量(public static final)
    4抽象类中可以有非抽象方法,接口中只能是抽象方法
    5抽象类可以有构造方法,被子类调用进行初始化对象,接口没有构造方法
继承是同一种事物,实现是不同种事物但有一样的能力
#### 接口设计
接口设计时,参数和返回值越靠近父类越灵活
面向接口的编程其实就是一种面向规范的编程
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

JavaHenShuai

你的鼓励将是我创作的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值