4~5日ぶりに勉強しました。今日はコンストラクタと継承について書きます。

前回をちょっとおさらい。
①クラスを作る(フィールド定義+メソッド定義)
②インスタンス(クラスを動かす為の実体)を作る。
 (クラス名 変数名 = new クラス名(引数);)

*コンストラクタとは
コンストラクタは「インスタンス(クラスを動かす実体)を作る時に、必ず実行される特別なメソッド」です。流れを書くと以下のようになります。

クラス作成→コンストラクタ作成→インスタンス作成

コンストラクタの特徴
返り値がない
クラス名と同じ名前


public class Java {
 public static void main(String[] args){
  JavaPrint object = new JavaPrint(10,9,8);
  object.printdata();
 }
 }

//クラス
class JavaPrint{
 int a;
 int b;
 int c;

//コンストラクタ
 JavaPrint(int n1,int n2,int n3){
 a = n1;
 b = n2;
 c = n3;
 }

 void printdata(){
 System.out.println( a + ","+ b + "," + c );
 }
}

結果
10,9,8

*継承
継承とは、「既にあるクラスの機能を全て受け継いで新しいクラスを作ること」です。
継承のもとになるクラスをスーパークラス、継承して作った新しいクラスをサブクラスといいます。

作り方
class クラス名 extends 継承するクラス名{  }


public class Java {
 public static void main(String[] args){
  JavaPrint_2 object = new JavaPrint_2();
  object.JavaPrint(100,90,80);
  object.printdata();
  object.printsub();

 }
 }

//スーパークラス
class JavaPrint{
 int a;
 int b;
 int c;

void JavaPrint(int n1,int n2,int n3){
 a = n1;
 b = n2;
 c = n3;
 }

 void printdata(){
 System.out.println( a + ","+ b + "," + c );
 }
}

//継承して作ったサブクラス
 
class JavaPrint_2 extends JavaPrint {
 void printsub(){
 System.out.println("サブクラス");
 }



結果
100,90,80
サブクラス


以上。
久しぶりに勉強しました。土曜日は神戸に行き、昨日まで鳥取に旅行に行ってました。
明後日入社式があるので明日から6時起きして会社に通う体のペースと整えたいと思います。