Java中的抽象类和接口

目录

一、抽象类

1.1什么是抽象类

1.2抽象类定义方法

1.3抽象类特点

1.4抽象方法特点

二、接口

2.1接口中的基础概念

2.2接口基础语法

2.3接口的作用

三、类与类之间的关系

3.1 (is a)

3.2 (has a)

3.3 (like a)


一、抽象类

1.1什么是抽象类

类和类之间具有共同特征,将这些共同特征提取出来,形成的就是抽象类。抽象类属于引用数据类型。

1.2抽象类定义方法

[修饰符列表] abstract class类名{ 类体; };

1.3抽象类特点

1)抽象类中依旧可以定义普通方法

2)抽象类中不一定有抽象方法,抽象方法必须出现在抽象类中。

3)抽象类无法实例化

1.4抽象方法特点

1)使用abstract进行修饰

2)抽象方法所在类必须是抽象类

3)抽象类子类可以是抽象类也可以不是,子类若不是抽象类,则必须重写抽象方法

二、接口

2.1接口中的基础概念

        1)接口也是一种引用数据类型。
        2)接口是完全抽象的。(抽象类是半抽象。)或者也可以说接口是特殊的抽象类。
        3)接口定义语法:[修饰符列表] interface 接口名 {}
        4)接口支持多继承,一个接口可以继承多个接口。
        5)接口中只包含两部分内容,一部分是:常量。一部分是:抽象方法。
        6)接口中所有的元素都是public修饰的。(都是公开的。)
        7)接口中的抽象方法定义时: public abstract修饰符可以省略。
        8)接口中的方法都是抽象方法,所以接口中的方法不能有方法体。
        9)接口中的常量的public static final可以省略。

2.2接口基础语法

1)类和类之间叫做继承,类和接口之间叫做实现,可以将"实现"看做"继承",继承使用extends关键字
实现使用implements关键字完成
2)当一个非抽象的类实现接口的话,必须将接口中所有的抽象方法全部实现(覆盖、重写)
3)一个类可以实现多个接口
4)接口和接口之间在进行强制类型转换的时候,没有继承关系,也可以强转
但是一定要注意,运行时可能会出现classCastException异常。
5)继承和实现同时存在时,extends关键字在前,implements关键字在后

2.3接口的作用

接口可以解耦合,任何一个接口都有调用者和实现者。接口可以将调用者和实现者解耦合,调用者面向接口调用,实现者面向接口编写实现

三、类与类之间的关系

3.1 (is a)

cat is a Animal(猫是一个动物)凡是能够满足is a的表示继承关系"
A extends B

3.2 (has a)

I has a Pen(我有一支笔)
        凡是能够满足has a关系的表示"关联关系"关联关系通常以"属性"的形式存在
        A{
            B b;
        }

3.3 (like a)

Cooker like a FoodMenu(厨师像一个菜单一样)凡是能够满足like a关系的表示"实现关系"
        实现关系通常是:类实现接口。
        A implements B

结论:通过以上的方法可以很快找出类与类之间的关系,有助于更快的分析一个项目。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值