Java中多态的用法
来源:互联网 发布:淘宝送的优惠券怎么用 编辑:程序博客网 时间:2024/06/13 21:17
一、什么是多态
一个父类的引用类型变量它既可以指向父类对象也可以指向子类对象,它可以根据当前时刻指向的不同,自动调用不同对象的方法,这就是多态。
如果 学了C语言的指针,我觉得多态还是比较好理解的,就好比C语言中用指针交换两个数,可以将子类对象的地址给父类的引用类型变量,这样就可以用父类的引用类型变量调用子类的成员。
看下面这个例子:
class A{public void f(){System.out.printf("AAAAAAAAA\n");}}class B extends A{public void f(){System.out.printf("BBBBBBBBB\n");}}public class TestPoly_1{public static void main(String[] args){A aa = new B();aa.f();aa = new A(); //aa可以根据它自己当前时刻指向A类对象还是A子类对象,而调用哪个对象的f方法,这就是多态aa.f();}}
二、多态的应用
利用多态可以用一段代码做不同的事情。class A{public void f(){System.out.printf("AAAAAAAAAA\n");}}class B extends A{public void f() //重写方法f{System.out.printf("BBBBBBBBBBB\n");}}class C extends B{public void f() //重写方法f{System.out.printf("CCCCCCCCCCC\n");}}public class TestPoly_2{public static void g(A aa) //g方法可以实现调用A类族所有对象f方法的功能{aa.f();}public static void main(String[] args){A aa = new A();B bb = new B();C cc = new C();g(aa);g(bb);g(cc);}}
三、多态的注意事项
1、子对象可以直接赋给父类引用,但父类对象在任何情况下都不可以直接赋给子类引用;
2、通过父类引用只能访问子类对象从父类继承过来的成员。
0 0
- Java中多态的用法
- java的static用法
- java-jar 的用法
- java的static用法
- java的static用法
- java的static用法
- java join的用法
- java volatile的用法
- Java Scanner的用法
- java StringTokenizer的用法
- Java native的用法
- JAVA的extends用法
- java的static用法
- java Vector的用法
- java volatile的用法
- java static的用法
- java socket的用法
- JAVA Iterator的用法
- Linux中sort,uniq,cut,wc命令详解
- 关于用adb命令行不起作用的情况
- 我的第一篇微博*-*,状态压缩入门POJ3254
- 自定义一个带删除按钮的ListView
- Linux进程间通信中的文件和文件锁
- Java中多态的用法
- Android开发之浅谈框架模式MVP
- Linux 下的五种 IO 模型
- 16 暑期校训 DAY6
- Java生成验证码
- 使用Category标签隐藏Jekyll博客文章
- Linux 终端生存指南
- debian8.5下Cinnamon桌面Bug#2解决方法
- LeetCode | Search a 2D Matrix