本帖最后由 廉伟杰 于 2014-1-20 21:27 编辑
编译时的类型由声明变量时使用的类型决定,即编译类型由左边决定 运行类型由实际赋给变量的对象决定,即运行类型由右边决定 如 Person p = new Student(); 编译类型是Person 运行类型是Student 把运行类型当做是对象的实际的类型,也就是对象的真正的类型 把编译类型当做是,把对象看成什么类型 如:我把一个真正的学生对象看成一个人 多态原因:如果编译时类型和运行时类型不同就出现多态
静态方法不能被覆写:因为方法的覆写和对象有关,而static修饰的方法和对象无关 希望我的回答对你能够有所帮助
|