以下はプロトコードです。
message Animal {
optional string name = 1;
optional int32 age = 2;
}
message Dog{
optional string breed = 1;
}
次に、上記のプロトを使用したサンプル クラス
public class InheritanceTest {
public static void main(String[] args){
Dog dog = Dog.getDefaultInstance();
printAnimalName(dog.getAnimal());
}
public static void printAnimal(Animal animal){
Dog dog = (Dog)animal; // Not at all possible right!
}
}
動物で「必須」として犬のインスタンスを持つことによってのみ、アップキャストは可能ですか? またはアップキャストの他の方法はありますか?