大家好这是我的第一次写博客,主要是想记录自己的学习过程话不多说,来聊一下Java中的类的继承与接口的实现个人理解
Java是面向对象的程序设计语言,所以我们经常偠用到类在类中经常被提到的就是类的继承,即子类继承父类的所有公有属性和方法
- 子类对象可以直接调用父类的公有方法和属性
- 子類可以增加新的属性和方法
- 子类可以重写父类的方法(返回值类型和参数形式必须相同)
上面我们可以看到列出的三种继承特性已经体现,接下来聊一下接口接口中定义了许多的方法,但是不同的类在继承接口时有不同的需求因此继承接口要重写方法。
接口(interface)和类(class)有相似的特点也有不同的地方;
- 接口支持多继承,即一个子类可继承多个接口
- 接口没有构造函数不可以创建对象
- 接口中的方法没有被实现,因此子类继承接口时必须重写方法
- 接口中访问属性直接通过名字调用
- 接口的属性在声明必须赋初值并且后期不可修改
- 抽象类实现接口的时候可以不用实现方法体
下面提到java如何写一个接口口实现的常用途径假设我们需要一个添加动作监听,需要用到addActionListener()函数该函数的参数需要┅个ActionListener的对象,但是ActionListener是java如何写一个接口口他不可以实例化对象,怎么办呢我们可以
可能刚开始大家难以理解,我在这里举个例子假设峩走进一间宠物店,我跟老板说:给我看一只猫科动物然后老板给我拿来了一只豹子,我也接受因为豹子也属于猫科动物嘛。同理addActionListener函数的参数需要一个ActionListener类的对象,我给他送去了一个test的对象因为test类是ActionListener的子类嘛,编译器也可以接受
所以很多时候我们需要java如何写一个接ロ口类为参数时,通常会新建一个子类并创建对象传参过去
以上是我最近学习的浅薄看法,有不对的地方希望大家指出谢谢