Java初学习
来源:互联网 发布:linux jira破解版下载 编辑:程序博客网 时间:2024/05/18 12:36
原文地址:http://blog.sina.com.cn/s/blog_50f0369c0100b567.html
接口的灵活性就在于“规定一个类必须做什么,而不管你如何做”。我们可以定义一个接口类型的引用变量来引用实现接口的类的实例,当这个引用调用方法时,它会根据实际引用的类的实例来判断具体调用哪个方法,这和上述的超类对象引用访问子类对象的机制相似。
//定义接口InterA interface InterA { void fun(); } //实现接口InterA的类B class B implements InterA { public void fun() { System.out.println(“This is B”); } } //实现接口InterA的类C class C implements InterA { public void fun() { System.out.println(“This is C”); } } class Test { public static void main(String[] args) { InterA a; a= new B(); a.fun(); a = new C(); a.fun(); } }
输出结果为:
This is B
This is C
上例中类B和类C是实现接口InterA的两个类,分别实现了接口的方法fun(),通过将类B和类C的实例赋给接口引用a,实现了方法在运行时的动态绑定,充分利用了“一个接口,多个方法”,展示了Java的动态多态性。
需要注意的一点是:Java在利用接口变量调用其实现类的对象的方法时,该方法必须已经在接口中被声明,而且在接口的实现类中该实现方法的类型和参数必须与接口中所定义的精确匹配。
还有常见的比如
Map map = new HashMap();List list = new ArrayList();
阅读全文
0 0
- Java初学习-泛型初学习
- java之初学习
- java初学习
- Java初学习
- Java初学习 - foreach循环
- Java初学习 - Thread说明
- java 反射机制初学习
- Java反射技术初学习
- Java 并发编程初学习
- Java初学
- 初学JAVA
- 初学Java
- Java初学
- 初学JAVA
- Java初学
- 初学java
- 初学java
- 初学java
- 一个主机多显示器的操作方法
- 关于UrlEncoder和UrlDecode
- 身份是语法
- ZTree异步加载时查询节点
- 基于‘BOSS直聘招聘信息’分析企业到底需要什么样的PHPer
- Java初学习
- SQL面试题
- python使用sequoiadb巨杉数据库
- 那个让鲸鱼跃出篮球场的Magic Leap,终于发布了一款AR眼镜
- && 、||短路原理的应用 与操作符的优先级
- maven 引入外部jar包的几种方式
- Cookie会话跟踪技术
- 指令格式
- 一篇很全面的freemarker教程(一)