- class Fu {
- int num = 3;
- void demo1() {
- System.out.println("fu_1");
- }
- void demo2() {
- System.out.println("fu_2");
- }
- static void demo4() {
- System.out.println("fu_4");
- }
- }
- class Zi extends Fu {
- int num = 5;
- void demo1() {
- System.out.println("zi_1");
- }
- void demo3() {
- System.out.println("zi_3");
- }
- static void demo4() {
- System.out.println("zi_4");
- }
- }
- public class Demo {
- public static void main(String[] args) {
- Fu f = new Zi();
- f.demo1(); // 结果为zi_1 ,成员函数多态时,看右边
-
- f.demo2(); // 结果为fu_2 ,成员函数多态时,看右边,右边有没此方法,则去父类中找
-
- // f.demo3(); //编译失败,因为class Fu中没有demo3这个方法
-
- f.demo4();//fu_4 ,静态方法多态时,看左边,左边是什么类型的类,就执行什么类型的类
- System.out.println(f.num); // 结果为3 ,成员变量多态时,看左边。左边是什么类型的类,就执行什么类型的类
- }
- }
复制代码
|
|