###質問
Java
継承関係にあるクラスの扱いについて
下記のように、子クラスに個別の処理を、
親クラスに共通の処理を実装した際に、メインのクラスから子クラスのmethodAを介して、
親クラスのmethodAにアクセスするのと、親クラスのmethodAのアクセス修飾子を"public"にし、
メインクラスから直接アクセスするのだと、どちらが正しい(良い)のでしょうか?
子クラスでオーバーライドしているわけでも、オーバロードしているわけでもないので、
わざわざ子クラスを介しているのは無駄なのかと考えているのですが、いかがでしょうか。
###ソースコード
Java
1public class SuperClass { 2 protected void methodA(int aParam) { 3 // 何かしらの処理 4 methodB(); 5 // 何かしらの処理 6 } 7 private void methodB() { 8 // 何かしらの処理 9 } 10} 11 12public class SubClassA extends SuperClass { 13 public void methodA(int aParam) { 14 super.methodA(aParam); 15 } 16 17 // 個別の処理 18} 19 20public class SubClassB extends SuperClass { 21 public void methodA(int aParam) { 22 super.methodA(aParam); 23 } 24 25 // 個別の処理 26} 27 28public class MainClassA { 29 public static void main(String[] args) { 30 SubClassA sub = new SubClassA(); 31 sub.methodA(1); 32 } 33} 34 35public class MainClassB { 36 public static void main(String[] args) { 37 SubClassB sub = new SubClassB(); 38 sub.methodA(2); 39 } 40}
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/06/12 00:14