抽象メソッドとは、実装を持たず、メソッドの意味(規約)だけを定義したメソッドです。抽象メソッドの実装は基底クラスでは行わず、派生クラスで行います。継承して使うことを前提としたクラスのことです。基底クラスでは実装せず、メソッドの意味(規約)だけを定義して、派生クラスで具体的な実装を行うようなメソッド。純粋仮想関数と呼ばれていたものです。)抽象メソッドを1個でも持つクラス(抽象クラス)は、インスタンスを生成することができません。プロパティで行っていました。基底クラスでは特に意味のない値を返す。意味のある実装は派生クラスで行います。意味のない値を返すメソッドを持つクラスのインスタンスが生成されてしまうというのはあまり好ましいことではありません。この問題を解決するためには2つの方法があります。1つは基底クラスにデフォルトの動作を定める方法です。プロパティが何らかの意味を持つ値を返すようにします。普通の人はみんな正直に年齢を答えてくれるに違いない。クラスのインスタンスを生成出来ないようにすることです。クラスのインスタンスは外部から生成できなくなります。外部からコンストラクタを呼べない。継承して使う専用のクラスになります。クラスに意味のないメソッドの実装が残っています。サブクラスでちゃんとオーバーライドしなければ無意味な値が返されてしまうという問題があります。実装のない(派生クラスで必ずオーバーライドしなければならない)メソッドを定義するための構文が用意されています。class)と呼ばれています。あってもインスタンスは生成できない。method)と呼ばれています。抽象メソッドは抽象クラス中でしか定義できません。付けて抽象プロパティにすることができます。