java 抽象类与接口

xiaozhou123456 / 2023-09-05 / 原文

抽象类

1.只要类中有一个抽象方法,这个类就被标记为抽象类。

2.抽象类被继承后需要实现类中的所有抽象方法(也就是保证以相同的方法名称、参数列表、返回值类型创建出非抽象方法,当然也可以是抽象方法)。

3.抽象类中可以同时有抽象方法和非抽象方法。

定义抽象类的语法如下:

public abstract class Parent{

    abstract void testAbstract();

}

接口


1.接口是抽象类的延伸,可以将它看作是纯粹的抽象类,接口中的所有方法都没有方法体。

2.可以将draw()方法封装到一个接口中,使需要draw()方法的类实现这个接口,同时也继承图形类。

3.在接口中,方法必须被定义为public或abstract形式,其他修饰权限不被java编译器认可。或者是,即使不将该方法声明为public形式,它也是public形式。

4.在接口中定义的任何字段都自动是static和final的。

5.Java中不允许出现多重继承,但使用接口可以实现多重继承。一个类可以同时实现多个接口,因此可以将所有需要继承的接口放置在implements关键字后并使用逗号隔开。语法如下:

class 类名 implements 接口1,接口2,...,接口n

但这可能会在一个类中产生庞大的代码量,因为继承一个接口时需要实现接口中所有的方法。

6.一个接口可以继承另一个接口,其语法如下:

interface intf1{}

interface intf2 extends intf1{}