java基础之向上造型之后,调用方法的规则

    首先哪个类型的引用,它点的只能是他里面出现过的方法名字,子类新加的方法名,父类引用是不能点出这个方法的。

    其次若子类重写了某个方法,父类点这个方法时父类的方法会被覆盖,调出的是子类重写的方法!重写是虚拟机运行期执行,

根据对象的不同而不是引用类型的不同,去调用不同的版本。重载是编译期执行,虚拟机会检查语法问题,生成.class文件(字节码文件)

    代码

public class Excies1 {
    public static void main(String [] args){
        
        father father=new son();
        father.staticMethod();
        father.method();
        
        son son=new son();
        son.staticMethod();
        son.method();
    }
}
class father{
    public static void staticMethod(){
        System.out.println("父类的静态方法");
    }
    public void method(){
        System.out.println("父类的普通方法");
    }
}
class son extends father{
    public static void staticMethod(){
        System.out.println("子类的静态方法");
    }
    public void method(){
        System.out.println("子类的普通方法");
    }
}

显示结果:

父类的静态方法
子类的普通方法
子类的静态方法
子类的普通方法

posted @ 2017-05-17 17:23  油坊桥山人  阅读(3424)  评论(1编辑  收藏  举报