extends & abstract , imprements & interface

Eclipseさんに任せっきりになってしまい, 「エラー出たらこっちにするか」 てな感じで,ごっちゃになってるこの人達...

「extends ,abstract , imprements ,interface」

 

メモっておこう...

間違ってたらどうしよう...

 

// 抽象クラス
abstract class SuperClass {
  int price = 1000;
  void show(int price) {
    System.out.println(price + "円");
  }
  abstract void calc();
}
// 継承
class SubClass extends SuperClass {
  //オーバーライド
  void calc(){
    show(price * 2);
  }
}
// 
class ExClass {
  public static void main(String[] args) {
    SubClass object = new SubClass();
    object.calc(); // 2000円
  }
}

 abstractは...

・抽象でないメソッドもおk

・extendしたクラスに任せる 

・extend 1つのみ

・継承関係内のみ

 

 interfaceは...

・メソッドのヘッダーのみ宣言(抽象メソッドのみしか宣言できない)

・imprementしたクラスに任せる 

・複数インプリメントすることができる

・継承関係内でなくてよい

 

あれ.他に違いあったっけ?

 

About

プログラムと農業とスノーボードと釣り

Read More