唐山网站建设策划,网站管理员登陆不了,外贸网站自建站,网站开发的关键技术与难点理清楚4个目标
父类引用#xff08;“名”#xff09;父类对象#xff08;“实”#xff09;子类引用子类对象
理清楚几个操作
// 父类
public class parent{}// 子类
public class sun{}父类引用指向父类对象
parent p1 new parent();子类引用指向子类对象
son s1 …理清楚4个目标
父类引用“名”父类对象“实”子类引用子类对象
理清楚几个操作
// 父类
public class parent{}// 子类
public class sun{}父类引用指向父类对象
parent p1 new parent();子类引用指向子类对象
son s1 new son();3. 父类引用指向子类对象
parent p2 new son();子类引用指向父类对象错误
son s2 new parent();5. 将第3点强制转换为由子类引用指向该子类对象
son s3 (son)p2;6. 对于强制类型转换转换结果不能是【子类引用指向父类】这显然是错误的java会进行强制类型转换检查。例如
parent p4 new parent();
son s4 (son)p4; // 错误弄明白几个操作
对于父类引用指向子类对象的情况此时父类引用只能操作父类的部分。
也就是说
能操作什么取决于引用的类型当然与修饰限定符有关只能操作public和protected修饰符的东西
这也可以印证为什么子类引用不能指向父类对象因为父类对象没有子类的方法而子类引用又可以操作子类方法就会造成错误。
父类引用子类对象的时候只能使用父类的共有或者保护方法 可以看到强制转换之后就相当于子类引用指向了子类对象也就是正常的情况了。 错误的做法子类引用指向父类对象
对于多次继承同样遵循父类与子类的关系
可以单独把继承链中的某两个类抽出来看作父类和子类然后关系就和上面说的一样了。
小结
整体来说就说了几件事情 左边指向右边有4种情况其中【子类引用指向父类对象】是不允许的
然后对于【父类引用指向子类对象】可以变换为【子类引用转换为父类对象】
还有一些访问权限的事情与访问修饰符有关。