java对象转型实例分析

本文实例讲述了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程序设计有所帮助

以上是 java对象转型实例分析 的全部内容, 来源链接: utcz.com/p/206839.html

回到顶部