Java クラスを使ったHello Java

目次

概要

クラスを使ったシンプルな 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();
  }
}

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

解説

メインクラス

メインクラス【Hellojava_Class_Main】を作成します。
クラスの定義は下記の様に行います。
class Hellojava_Class_Main
{

}

メインメソッド

メインメソッドから【Hellojava_Class_method】を呼び出します。
class Hellojava_Class_main
{
  // メインメソッド
  public static void main ( String[] args )
  {
    // メソッド呼び出し
    Hellojava_Class_method()  ;
  }

メソッド

メソッド【Hellojava_Class_method】を定義します。
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】をインスタンス化します。
インスタンス化は下記の様に定義します。
    // クラス Hellojava_Class_Subをインスタンス化
    Hellojava_Class_Sub Obj1.new Hellojava_Class_Sub() ;
メソッド内にクラスのインスタンス化を定義します。
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】のメソッドを呼び出します。
インスタンス化した時の変数【Obj1】でメソッドを呼び出すには下記の様に記述します。
    // クラス Hellojava_Class_Subのメソッドを利用
    Obj1.Standard_out();
メソッド内でクラス【Hellojava_Class_Sub】のメソッドを呼び出します。
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のメソッドを呼び出し
    Obj1.Standard_out();
  }
}

サブクラスの定義

メインクラスでインスタンス化するサブクラスを定義します。
サブクラス【Hellojava_Class_Sub】を下記の様に定義します。
class Hellojava_Class_Sub
{
  // メソッドの定義

}

サブクラスのメソッドの定義

標準出力に文字列「Hello Java」を出力するメソッドを定義します。
メソッド名【Standard_out】を定義します。
class Hellojava_Class_Sub
{
  // メソッドの定義
  public static void Standard_out()
  {
    System.out.println( "Hello Java" );
  }
}

ソースファイル

ソースファイル名【Hellojava_Class_Main.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();
  }
}

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

コンパイル

ソースファイル【Hellojava_Class_Main.java】をコンパイルします。

javac Hellojava_Class_Main.java
コンパイル後、ファイルを確認すると、クラスファイルが二つ作成されています。
 メインクラスのクラスファイル:【Hellojava_Class_Main.class】
 サブクラスのクラスファイル :【Hellojava_Class_sub.class】
ディレクトリを確認すると下記の様になります。
>DIR
2020/08/02  19:47    <DIR>          .
2020/08/02  23:25    <DIR>          ..
2020/08/03  22:52               725 Hellojava_Class_Main.java
2020/08/03  23:04               432 Hellojava_Class_Main.class
2020/08/03  23:04               421 Hellojava_Class_sub.class

実行

実行時には、メインクラス【Hellojava_Class_Main】を実行します。
メインクラスは、サブクラス【Hellojava_Class_Sub】を呼び出して実行します。
>javac Hellojava_Class_Main.java

>java  Hellojava_Class_Main
Hello Java

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