C++ ポリモーフィズム
ポリモーフィズム
ポリモーフィズムとは「多くの形式」を意味し、継承によって相互に関連するクラスが多数ある場合に発生します。
前の章で指定したように。継承別のクラスから属性とメソッドを継承できます。ポリモーフィズムこれらのメソッドを使用して、さまざまなタスクを実行します。これにより、1 つのアクションをさまざまな方法で実行できます。
たとえば、と呼ばれる基本クラスを考えてくださいAnimal
と呼ばれるメソッドを持っていますanimalSound()
.動物の派生クラスには、豚、猫、犬、鳥などがあります。また、動物の鳴き声 (豚の鳴き声、猫の鳴き声など) の独自の実装もあります。
例
// Base class
class Animal {
public:
void animalSound() {
cout << "The animal makes a sound \n";
}
};
// Derived class
class Pig : public Animal {
public:
void animalSound() {
cout << "The pig says: wee wee \n";
}
};
// Derived class
class Dog : public Animal {
public:
void animalSound() {
cout << "The dog says: bow wow \n";
}
};
から覚えておいてください。継承の章私たちが使用すること:
クラスから継承するシンボル。
これで作成できますPig
とDog
オブジェクトとオーバーライドanimalSound()
方法:
例
// Base class
class Animal {
public:
void animalSound() {
cout << "The animal makes a sound \n";
}
};
// Derived class
class Pig : public Animal {
public:
void animalSound() {
cout << "The pig says: wee wee \n";
}
};
// Derived class
class Dog : public Animal {
public:
void animalSound() {
cout << "The dog says: bow wow \n";
}
};
int main() {
Animal myAnimal;
Pig myPig;
Dog myDog;
myAnimal.animalSound();
myPig.animalSound();
myDog.animalSound();
return 0;
}
「継承」と「ポリモーフィズム」を使用する理由とタイミング
- コードの再利用性に役立ちます。新しいクラスを作成するときに、既存のクラスの属性とメソッドを再利用します。
プログラミング学習を加速させる
プログラミングをプロの講師に教えてもらいませんか。