Java サブクラスをインスタンス化して使用する

目次

概要

既に作成したサブクラスのメソッドを再利用するサンプルコードです。

ソースコード

サブクラス

// Hellojava_Class_Sub.java
// サブクラス
class Hellojava_Class_Sub
{
  // メソッドの定義
  public static void Standard_out ()
  {
    System.out.println( "Hello Java" );
  }
}

メインクラス

// Hellojava_Class_Main.java
// 概要
// クラスを使った Hello Java
//
// メインクラス
class Hellojava_Class_Main
{
  // メインメソッド
  public static void main ( String[] args )
  {
    // メソッド呼び出し
    Hellojava_Class_method()  ;
  }

  // メソッド
  public static void Hellojava_Class_method()
  {
    // サブクラス Hellojava_Class_Subをインスタンス化
    Hellojava_Class_Sub Obj1 = new Hellojava_Class_Sub() ;

    // サブクラス Hellojava_Class_subのメソッドStandard_outを呼び出し
    Obj1.Standard_out();
  }
}

実行結果

>javac Hellojava_Class_sub.java

>javac Hellojava_Class_Main.java

>java  Hellojava_Class_Main
Hello Java

>

解説

サブクラスの作成

サブクラスのソースコードです。
メインメソッドを持たないクラスを作成します。

文字列「Hello Java」を出力するメソッドを含むクラスファイルを作成します。
ソースファイル名【Hellojava_Class_sub.java】で、保存します。
// Hellojava_Class_sub.java
// サブクラス
class Hellojava_Class_sub
{
  // メソッドの定義
  public static void Standard_out ()
  {
    System.out.println( "Hello Java" );
  }
}

メインクラスの作成

メインクラスのでサブクラスをインスタンス化して使用します。

このクラスには、文字列「Hello Java」を出力するメソッドが含まれていません。
サブクラス【Hellojava_Class_sub】のメソッド【Standard_out】を呼び出しています。
// Hellojava_Class_Main.java
// 概要
// クラスを使った Hello Java
//
// メインクラス
class Hellojava_Class_Main
{
  // メインメソッド
  public static void main ( String[] args )
  {
    // メソッド呼び出し
    Hellojava_Class_method()  ;
  }

  // メソッド
  public static void Hellojava_Class_method()
  {
    // サブクラス Hellojava_Class_Subをインスタンス化
    Hellojava_Class_Sub Obj1 = new Hellojava_Class_Sub() ;

    // サブクラス Hellojava_Class_subのメソッドStandard_outを呼び出し
    Obj1.Standard_out();
  }
}

コンパイル

サブクラスのコンパイル

サブクラス【Hellojava_Class_sub.java】をコンパイルします。
サブクラスを事前にコンパイルしないとメインクラスのコンパイルでエラーになります。
javac Hellojava_Class_Sub.java

メインクラスのコンパイル

メインクラス【Hellojava_Class_Main.java】をコンパイルします。
サブクラスを事前にコンパイルしないとインスタンス化できないのでエラーになります。
javac Hellojava_Class_Main.java

実行

実行は、メインメソッドを持つ【Hellojava.Class_Main】を実行します。
java  Hellojava_Class_Main

実行結果

>javac Hellojava_Class_Sub.java

>javac Hellojava_Class_Main.java

>java  Hellojava_Class_Main
Hello Java

>
よかったらシェアしてね!
目次