Примеры в этой статье описывают концепцию преобразования объектов Java и предоставлены вам для справки. Конкретные методы заключаются в следующем:
Примечания по приведению объектов (приведению типов) следующие:
1. Переменная ссылочного типа базового класса может «указывать» на объект своего подкласса.
2. Ссылка на базовый класс не может получить доступ к вновь добавленным членам (свойствам и методам) объекта его подкласса.
3. Вы можете использовать имя класса экземпляра ссылочной переменной, чтобы определить, принадлежит ли объект, на который «указывает» ссылочная переменная, этому классу или подклассу этого класса.
4. Объекты подклассов могут использоваться как объекты базового класса, что называется повышающим приведением, и наоборот — понижающим.
Конкретный код реализации выглядит следующим образом:
public class TestCasting { public static void main(String args[]){ Animal Animal = new Animal("name"); Cat cat = new Cat("catName","blueColor"); ,"yellowColor"); System.out.println(экземпляр животного Animal); System.out.println(экземпляр кошки Animal); //System.out.println(animal instanceof cat); //ошибка животное = new Dog("dogAnimal","dogColor"); System.out.println(animal.name); //System.out.println(animal) .forColor); // ошибка System.out.println(животное экземпляр животного); System.out.println(животное экземпляр собаки d1 = (Собака)животное; System.out.println(d1.forColor); }}class Animal { public String name; public Animal(String name) { this.name = name; }} class Cat расширяет Animal { public String EyeColor; public Cat (String name, String EyeColor) { super (name); this.eyeColor = EyeColor; }} Class Dog расширяет Animal { public String forColor; public Dog (String name, String forColor) { super (name); this.forColor = forColor }}
Результаты запуска показаны на рисунке ниже:
Я надеюсь, что эта статья будет полезна каждому, кто занимается программированием на Java.