Java面向对象之抽象类和接口(二)

本文探讨了Java中的抽象类和接口。抽象类是含有抽象方法的类,不能被实例化,用于作为继承的父类。接口则包含默认的抽象方法和常量,支持多层继承和多重实现,提供了多重继承的效果。实现接口的类必须提供接口中所有方法的具体实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、抽象类

1、注意事项

1、有时将一个父类设计得非常抽象,以至于它没有具体的实例,这样的类叫做抽象类。

2、用abstract关键字来修饰一个类时,这个类叫做抽象类。

3、用abstract来修饰一个方法时,该方法叫做抽象方法。抽象方法:只有方法的声明,没有方法的实现。以分号结束。

4、含有抽象方法的类必须被声明为抽象类。

5、抽象类不能被实例化。抽象类是用来作为父类被继承的,抽象类的子类必须重写父类的抽象方法,并提供方法体。若没有重写全部的抽象方法,仍为抽象类。

6、抽象类不能被实例化。抽象类是用来被继承的,抽象类的子类必须重写父类的抽象方法,并提供方法体

7、不能用abstract修饰属性、私有方法、构造器、静态方法、final的方法。

2、代码演示

package scanner;
//父类
public abstract class Person{
    //抽象类只有方法没有方法实现
    public abstract void say();
}

package scanner;
//抽象类的子类必须重写父类的抽象方法,并提供方法体。若没有重写全部的抽象方法,仍为抽象类。
//抽象类可以写普通方法,抽象方法必须再抽象类中。
public class A extends Person {
    @Override
    public void say() {

    }
}

二、接口

1、接口的特点

1、用interface来定义。

2、接口中的所有成员变量都默认是由public static final修饰的。

3、接口中的所有方法都默认是由public abstract修饰的。

4、接口没有构造器。

5、接口采用多层继承机制。

2、注意事项

1、有时必须从几个类中派生出一个子类,继承它们所有的属性和方法。但是,Java不支持多重继承。有了接口,就可以得到多重继承的效果。

2、接口(interface)是抽象方法和常量值的定义的集合。

3、从本质上讲,接口是一种特殊的抽象类,这种抽象类中只包含常量和方法的定义,而没有变量和方法的实现。

4、实现接口类:

  class SubClass implements InterfaceA{ }

5、一个类可以实现多个接口,接口也可以继承其它接口。

6、实现接口的类中必须提供接口中所有方法的具体实现内容,方可实例化。否则,仍为抽象类。

7、与继承关系类似,接口与实现类之间存在多态性

3、代码演示

在这里插入图片描述

结果:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

不吃辣的IT男

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

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

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

打赏作者

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

抵扣说明:

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

余额充值