java对象转型实例分析

时间:2021-05-19

本文实例讲述了java对象转型的概念,分享给大家供大家参考。具体方法如下:

对象转型(casting)注意事项如下:

1、一个基类的引用类型变量可以“指向”其子类的对象。

2、一个基类的引用不可以访问其子类对象新增加的成员(属性和方法)。

3、可以使用 引用变量 instanceof 类名 来判断该引用型变量所“指向”的对象是否属于该类或该类的子类。

4、子类的对象可以当做基类的对象来使用称作向上转型(upcasting),反之成为向下转型(downcasting)。

具体实现代码如下:

public class TestCasting{ public static void main(String args[]){ Animal animal = new Animal("name"); Cat cat = new Cat("catName","blueColor"); Dog dog = new Dog("dogName","yellowColor"); System.out.println(animal instanceof Animal); System.out.println(cat instanceof Animal); System.out.println(dog instanceof Animal); //System.out.println(animal instanceof cat); //error animal = new Dog("dogAnimal","dogColor"); System.out.println(animal.name); //System.out.println(animal.forColor); //error System.out.println(animal instanceof Animal); System.out.println(animal instanceof Dog); Dog d1 = (Dog)animal; System.out.println(d1.forColor); }}class Animal{ public String name; public Animal(String name){ this.name = name; }}class Cat extends Animal{ public String eyeColor; public Cat(String name, String eyeColor){ super(name); this.eyeColor = eyeColor; }}class Dog extends Animal{ public String forColor; public Dog(String name, String forColor){ super(name); this.forColor = forColor; }}

运行结果如下图所示:

希望本文所述对大家的Java程序设计有所帮助

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章