java 对象强制转换问题.

来源:百度知道 编辑:UC知道 时间:2024/05/09 07:11:26
• 子类对象可以自动转换成父类
• 父类转换成子类必须使用强制转换。
• instanceof 操作符可以用它来判断一个实例对象是否属于一个类。
如父类定义A a =new A();
子类 B b=new B();
如果 a=b;
则进行默认转换.切割子类中的方法和属性.而b=a;则会报错.应该用, b=B(a);
A a=new B();//切割子类中的方法和属性
B b=new A();//编译器会报错.
改成B b=B(new A ());//这样是否可以?
刚学JAVA 哪位大侠能告诉我这样理解是否正确..

理解基本正确,但强制转换并不一定能成功;
B b=B(new A ());和b=B(a); 肯定是错的;
应为:B b=(B)new A();和b=(B)a;
自己代码亲测吧

是,理解正确,
有时候拿不定就写代码运行一下就明白了