このsuperがインタフェースおよび実装クラスで指すオブジェクト
3143 ワード
- interface Base{
- public void dosth();
- public void doSth_1();
- }
- class Sub1 implements Base{
-
- public void doSth_1() {
- this.dosth();
- // super.doSth(); // error super Base Object
- }
-
- public void dosth() {
-
- }
-
- }
ベースをclass implementに変更してextendsに変更すると
- class Base{
- protected void dosth(){
-
- }
- public void doSth_1(){
-
- }
- }
- class Sub1 extends Base{
- public void dosth(){
- super.dosth();
- super.doSth_1();
- this.dosth();
- this.doSth_1();
- }
- void func(){
- super.dosth();
- }
- }