java多态和接口demo_Java笔记2(多态和接口)

1.多态(一种现象)

继承是多态的实现基础

多态:即对象的多种形态

1.引用多态

父类的引用可以指向本类对象

父类的引用可以指向子类对象

99271835313ab0517b35b40808872ba7.png

这就是引用多态

2.方法多态

创建本类对象时,调用的方法为本来的方法

创建子类对象时,调用的方法为子类重写的方法或继承的方法

c6da42692f9a9099b9be87f8e0c3ef5a.png

二.接口

什么是接口呢???

接口可以理解为一种特殊的类,由全局常量和公共的抽象方法所组成

如果说类是一种具体实现体,那么接口就是某些类所要遵循的规范,接口只是一种规范,不关心类的内部数据和方法实现的细节,它只规定类中必须有什么东西,是用来约束类的。用interface关键字定义接口

要注意的是接口一般都是用来被继承,被实现的。修饰符一般用public,不用protected和private修饰接口

a7a248b7ea88e072fd06234c063591e0.png

接口中全是常量和抽象方法

1a077ee8a85aaaaa281b83d8d95afa1b.png

3c8550562b79c990d1b39a1f0e1ab422.png

问题来了,怎么去使用接口呢??

一个类可以实现一个或多个接口,实现接口使用implements 关键字。。。我们知道Java中一个类只能继承一个父类,这样是不是很不灵活,那么就可以通过接口进行补充

cd31c8bd63a00c08183355910b53e345.png

这里需要 注意的是继承和接口的实现顺序是不能互换的,也就是必须先继承再实现接口,还有就是实现接口时,同样也要实现接口里的方法

下面看一个接口实现的例子

de427d3d53f676880fb2036f84be2592b49.jpg

c9c4cd9db13fe4d5194aff8b590ec4d8ce4.jpg

//接口

packageClassDemo1;public interfaceIWatch {public voidwatch();

}//Woker类

packageClassDemo1;public class Woker implementsIWatch{

@Overridepublic voidwatch() {

System.out.println("我们都有一双明亮的眼睛");

}

}//Student类

packageClassDemo1;public class Student extends Person implementsIWatch{public voidsay() {

System.out.println("学生会说不同的语言");

}public voidwatch()

{

System.out.println("我们也有一双明亮的眼睛");

}

}//测试类、

packageClassDemo1;public classMain {public static voidmain(String[] args) {

IWatch i=new Woker(); //用接口引用指向实现接口的对象

IWatch j=newStudent();

i.watch();

j.watch();

}

}

View Code

另外附上测试结果

e8de7bd7a8595b2bb802fd58b2c815ed.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值