1,java多态:子类对象可以替代父类对象的使用。 Person p=new Student(); 其中student是person的子类。 具体规则如下所示:1 一个对象只能属于一种确定的数据类型,该类型自对象创建直至销毁不能改变。 2一个引用类型变量可能引用(指向)多种不同类型的对象-----即可以引用其声明的对象,也可以引用其声明类型的子类的对象
2,匿名对象与有名对象的区别:前者只能一次性使用,后者可多次使用。
3,虚丰富调用
4,对象造型:--引用类型数据值之间的强制转换
造型操作的规则: 1从子类到父类的类型转换可以自动进行---即不需要而外操作,天然合法。子类对象可以替代父类对象来使用。 2在多态的情况下,从父类到子类的类型转换必须通过造型(强制类型转换)实现 3无继承关系的引用类型间的转换是非法的
注意:要想父类到子类的造型能成功----只有当对象的真正类型本就是子类类型才能达到恢复本来面目的的功能作用。 例如 : Student s=new Student();//假定 Student 是Person的子类
Person p=s; //可知p对象本源是s,是Student类型的
Student stu=(Student)p;//恢复p的面目
System.out.println(stu.getschool);//以上就是整个过程,为合法
而当一个对象如果其真正类型就是父类类型,则是不能被造型为子类类型的
Person p=new Person();//p对象为Person类型 即父类型
Student stu =(Student)p;//运行出错,为非法