巧用抽象类与接口,打造高效Java程序(上)

White graces:个人主页

专栏推荐:《C语言入门知识》

 内容推荐:

今日诗词:十年花骨东风泪,几点螺香素壁尘


目录

思维导图

一.抽象类

1.概念

2.抽象类语法

3.抽象的特点

(1).抽象类特点

​(2).抽象方法特点

4.抽象类的作用

二.接口

☘️1.概念☘️

☘️2.语法☘️

☘️3.使用☘️

☘️4.接口小练习☘️

☘️5.特性☘️


思维导图

巧用抽象类与接口,打造高效Java程序(上)_第1张图片

一.抽象类

1.概念

概念:对象是通过类来描绘的,如果类不能完整的描述一个对象,这个类即为抽象类

举例:一个图形Shape类,如果我们想要创建一个矩形,但是Shape类不一定是矩形

               矩形类应该和Shape类是继承关系

巧用抽象类与接口,打造高效Java程序(上)_第2张图片

巧用抽象类与接口,打造高效Java程序(上)_第3张图片


2.抽象类语法

语法:abstract + 类

前提:这个类可以被设计成抽象类,例如前面的Animal类

⭐Tip⭐

方法也可以被abstract修饰,被称作抽象方法

变量不可以被abstract修饰


3.抽象的特点

(1).抽象类特点

特点:  父类被abstract修饰,子类必须重写

               抽象类不能直接实例化对象

演示

巧用抽象类与接口,打造高效Java程序(上)_第4张图片(2).抽象方法特点

特点:  方法可以不用写具体内容,可以只有方法名

                方法不能被private修饰,因为子类需要重写,父类的方法需要被子类访问到

                方法不能被final修饰        链接:final关键字知识

                方法不能被static修饰,子类也需要重写

abstract class Animal {
    abstract public void eat();    //abstract修饰,可以不写具体内容了
     abstract private void bark(); //abstract后面不能使用private修饰符
                                   //被private修饰子类不能重写此方法了
    abstract public final void sleep();//不能使用final,因为被final修饰方法不能重写
    abstract static void drink();  //不能使用static,因为被static修饰方法不能重写
}

巧用抽象类与接口,打造高效Java程序(上)_第5张图片


4.抽象类的作用

作用:  提醒我们不要忘记重写父类方法,看起来用处不大,但是存在即合理。

               给我自己的提示:  一定要加上

二.接口

☘️1.概念☘️

接口举例:  日常生活电源插座,USB,耳坤......

Java接口概念:  接口是所有类的公共模范,所有类都可以调用接口

                              因此接口是一种引用数据类型

☘️2.语法☘️

关键字:  interface

 语法:  public interface + 接口名

命名规范:  接口名一般首字母是大写

⭐注意:  接口和接口中的方法一般默认为公共的(public),特性待会仔细说

               被public修饰的接口,接口名要和文件名相同

✍️通过下图可以直观看到

巧用抽象类与接口,打造高效Java程序(上)_第6张图片 到这里只是创建接口,而接口是抽象的数据类型,不能直接使用

☘️3.使用☘️

关键字:  implements

语法:   (public)class 类名 implements 接口名,public可加可不加

巧用抽象类与接口,打造高效Java程序(上)_第7张图片

☘️4.接口小练习☘️

非常经典的题目,可以快速帮助你入门接口,篇幅较长,新建一篇文章讲解

✍️链接:接口经典题目                                             

☘️5.特性☘️

(1).接口是抽象的数据类型,无法实例化对象

巧用抽象类与接口,打造高效Java程序(上)_第8张图片

(2).接口是抽象的,所以接口里面的方法默认被public abstract修饰

          其他修饰符都是错误的

巧用抽象类与接口,打造高效Java程序(上)_第9张图片

(3).接口是抽象的,所以接口方法不能在接口内实现

(4).重写接口方法,方法前的修饰符会改变(因此需要我们手动更改),具体看下图

巧用抽象类与接口,打造高效Java程序(上)_第10张图片

(5).接口里面可以有变量,但是它默认被public static final修饰,相当于写死了

巧用抽象类与接口,打造高效Java程序(上)_第11张图片

(6).接口里面不能含有任何代码块构造方法

巧用抽象类与接口,打造高效Java程序(上)_第12张图片

(7).如果类没有完全重写接口的所有方法,那么这个类必须设置成抽象类

巧用抽象类与接口,打造高效Java程序(上)_第13张图片



✨谢谢你的阅读和耐心!祝愿你在编程的道路上取得更多的成功与喜悦!"✨

⭐️点赞收藏加关注,学习知识不迷路⭐️

✔️✔️✔️✔️

⛳️ 点赞☀️收藏 ⭐️ 关注

⛳️ 点赞☀️收藏 ⭐️ 关注

⛳️ 点赞☀️收藏 ⭐️ 关注

‍♂️‍♂️‍♂️‍♂️‍♂️‍♂️‍♂️‍♂️‍♂️‍♂️‍♂️‍♂️‍♂️

你可能感兴趣的:(java,开发语言)