質問: こんにちは。長文すいません。 Javaでは現時点では処理が確定できない詳細未定メソッドを「アクセス修飾子 abstract 戻り値 メソッド名();」で抽象メソッドにでき、利用者にオーバーライドを強制させられるのですが、中に入れられる値を確定できない詳細未定のフィールドを抽象化することはできないのでしょうか。「アクセス修飾子 abstract 型 変数;」にしてもコンパイルエラーになってしまいます。どうすれば、抽象メソッドのように利用者にオーバーライドを強制できるのですか。 自分は、Javaの入門書を1冊勉強し、わかりやすく開設しているサイトを見ながらシューティングゲームやアクションゲームのスプライトの実装ができるぐらいでしかないので、わかりやすくお願いします。
回答: <質問者です> すみません。自己解決しました。分かりにくいかもしれませんが解説です。 単にフィールドを宣言し、コンストラクタに仮引数を、そして仮引数とフィールドをイコールでつなぐだけでした。そうすれば継承時に子クラスで 1.子クラスのコンストラクタにも同じ仮引数をつけないといけない 2.superというキーワードで親クラスのコンストラクタに値を代入する のどちらかをしないといけない状態を作ることができたので、抽象フィールド的な存在を作ることができました。 あと、質問の時の「解説」の字が「開設」になっていました。失礼しました。