// Vehicle クラスã¨ãã®ã‚µãƒ–クラス Car クラスã€ã•らã«ãã®ã‚µãƒ–クラス SportsCar クラス
class Vehicle {
void start() {
System.out.println("Vehicle is starting");
}
}
class Car extends Vehicle {
void drift() {
System.out.println("Car is drifting");
}
}
class SportsCar extends Car {
void turboBoost() {
System.out.println("SportsCar is boosting");
}
}
public class Main {
public static void main(String[] args) {
// Vehicle クラスã®ã‚ªãƒ–ジェクトを作æˆ
Vehicle vehicle = new Vehicle();
// Vehicle クラスã®ã‚ªãƒ–ジェクトを SportsCar クラスã«ãƒ€ã‚¦ãƒ³ã‚ャスト
if (vehicle instanceof SportsCar) {
SportsCar sportsCar = (SportsCar) vehicle; // ダウンã‚ャスト
sportsCar.turboBoost(); // SportsCar クラスã®ãƒ¡ã‚½ãƒƒãƒ‰ã‚’呼ã³å‡ºã™
} else {
System.out.println("Vehicle is not a SportsCar");
}
}
}
ã“ã®ä¾‹ã§ã¯ã€Vehicle クラスã®ã‚ªãƒ–ジェクトを作æˆã—ã€ã“れを SportsCar クラスã«ãƒ€ã‚¦ãƒ³ã‚ャストã—ã¦ã„ã¾ã™ã€‚instanceof 演算åを使用ã—ã¦ã€å…ƒã®ã‚ªãƒ–ジェクト㌠SportsCar クラスã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã§ã‚ã‚‹ã‹ã‚’確èªã—ã¦ã„ã¾ã™ã€‚ãã—ã¦ã€ãƒ€ã‚¦ãƒ³ã‚ャスト後㫠SportsCar クラスã®ãƒ¡ã‚½ãƒƒãƒ‰ã§ã‚ã‚‹ turboBoost メソッドを呼ã³å‡ºã—ã¦ã„ã¾ã™ã€‚
「015 ãƒãƒªãƒ¢ãƒ¼ãƒ•ィズムã€å•題集リスト
🎯 実習ã§ç†è§£ã‚’æ·±ã‚よã†
ã“ã®å†…容ã«ã¤ã„ã¦JavaDrillã§å®Ÿéš›ã«æ‰‹ã‚’å‹•ã‹ã—ã¦å¦ç¿’ã§ãã¾ã™


コメント