生活中的抽象
![在这里插入图片描述](https://img-blog.csdnimg.cn/3785c0e2c3374c6ab9ef3077f38bfacc.png)
抽象的牛演变过程
![在这里插入图片描述](https://img-blog.csdnimg.cn/287bae8af0f0455dbe1da3e77333dd7f.png)
还是不懂? 没关系
![在这里插入图片描述](https://img-blog.csdnimg.cn/2d0dde4bd58e45929ed41cdd01db38cd.png)
抽象类的概念
![在这里插入图片描述](https://img-blog.csdnimg.cn/2b43d54c798d4120ba463a36011a9761.png)
抽象类的特性
![在这里插入图片描述](https://img-blog.csdnimg.cn/1e6e6c2f5e5046109d9bfa799614e80c.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/862d3966ce7e4154ae9b1696876bbda2.png)
抽象方法和抽象类的使用
![在这里插入图片描述](https://img-blog.csdnimg.cn/3dede38d03904a599921dcfc40f71efb.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/6ffa7fa402cd4dbe8c01eef9451cdc82.png)
方法重写的概念
重写是子类对父类的允许访问的方法的实现过程进行重新编写, 返回值和形参都不能改变。即外壳不变,核心重写!
子类能够根据需要实现父类的方法。
重写方法不能抛出新的检查异常或者比被重写方法申明更加宽泛的异常。
方法重写的规则
![在这里插入图片描述](https://img-blog.csdnimg.cn/4780264d5ffe48cf9284e162ba028e83.png)
接口的概念
![在这里插入图片描述](https://img-blog.csdnimg.cn/bd0568b010a94deba2da141dfad31c4b.png)
接口和类的区别
![在这里插入图片描述](https://img-blog.csdnimg.cn/4dfbdc407b674f62a305e5c0595d8e35.png)
接口和抽象类的区别
![在这里插入图片描述](https://img-blog.csdnimg.cn/5e480c0201e04de0b905a4c028d56d51.png)
接口的继承
![在这里插入图片描述](https://img-blog.csdnimg.cn/fa301839d2f04588a71633f25473b24c.png)
总结
Java中的接口
属性全都是全局静态常量
方法都是全局抽象方法
无构造方法
一个类可以实现多个接口,非抽象类实现接口时必须实现接口中的全部方法
抽象类利于代码复用,接口利于代码维护