2020/03/20

Javaプログラミング

Javaのプログラム構成

Javaのプログラムはクラスの集まりで構成されます。クラスとは、データメソッド(手続き)の集まりで、以下のように記述します。波括弧”{”から”}”までがそのクラスの内容です。

修飾子 class クラス名 {
	データ
	 :

	メソッド(手続き)
	 :
}

このクラスの中のデータメンバ変数フィールド変数)と呼ばれ、クラスの状態を持つためのものです。メソッド(手続き)は、動作を記述したものになります。

それでは、人間を表すHumanというクラスを例に説明していきます。以下が、Humanクラスの記述例です。

public class Human {
        // メンバ変数
        public String name;       // 名前

        public short  gender;    // 性別

        public short  year;        // 生年月日(年)
        public short  month;     // 生年月日(月)
        public short  day;         // 生年月日(日)

        public float  height;      // 身長
        public float  weight;      // 体重

        public short  bloodtype; // 血液型
}

上記のHumanクラスは、データだけで作られているクラスです。メソッドはありません。これは、人間の情報(名前・性別・生年月日・身長・体重・血液型)をメンバ変数で持っていて、それをHumanクラスでまとめている例です。

次に、Humanメソッドを追加したHuman2というクラスを例に説明していきます。以下が、Human2クラスの記述例です。

public class Human2 {
        // メンバ変数
        public String name;       // 名前

        public short  gender;    // 性別

        public short  year;        // 生年月日(年)
        public short  month;     // 生年月日(月)
        public short  day;         // 生年月日(日)

        public float  height;      // 身長
        public float  weight;      // 体重

        public short  bloodtype; // 血液型

        // メソッド
        public int getAge()
        {
                int age;   // ←クラスのメンバ変数ではない。getAge()の中だけで使用可能

                // ここで、現在時刻と生年月日(year、month、day)から年齢を計算してageに代入。
                // 実際に動作するソースコードは、省略します。
                // ■関連項目の「年月日から年齢を計算する方法を解説」を参考にしてください。

                return age;
        }
}

クラスに、人間の年齢を計算するgetAgeメソッドを追加しています。この例では、年齢を現在時刻と生年月日から計算することを想定しています。

それでは、実際に動作するプログラムHelloWorld.Javaソースコードを例にして、クラスデータメソッドを見ていきます。

public class HelloWorld {
    public static void main( String[] args ) {
        System.out.println( "Hello World !!" );
    }
}

このソースの例では、「修飾子」はpublic、「クラス名」はHelloWorld、「データ」は無し、「メソッド」はmainです。

public class HelloWorld {  // 修飾子(public)  class  クラス名(HelloWorld)
	public static void main( String[] args ) {
		System.out.println( "Hello World !!" );
	}
} 

次に、HelloWorldクラスの内容について説明します。HelloWorldクラスには、mainという名前のメソッドがあります。mainメソッドは特別なメソッドで、Javaのプログラムが実行されると最初に呼び出されるメソッドです。

public class HelloWorld {
	public static void main( String[] args ) {  // mainメソッド
        	System.out.println( "Hello World !!" );
	}
} 

HelloWorldクラスには、データは含まれていません。mainメソッド(手続き)があるだけです。

以上です。

関連コンテンツ

Javaの学習に役立つソースコードを多数紹介しています。是非、ご覧ください。

2022.09.10

プログラミング言語とは?種類や特徴について説明しています。

2022.08.03

メソッドの定義方法を詳しく解説しています。Javaのサンプルソースコードを使った説明もあります。

2020.03.23

Javaのプログラムを書いてみませんか?プログラムの書き方をくわしく説明しています。

2020.03.23

プログラムの最初に実行されるメソッドは?

2022.12.13

入力した10進数を2進数に変換するプログラムを作ってみませんか?

2016.02.26

同じ型の変数(データ)を複数個まとめて管理するデータの持ちかたがあります。これが配列です。くわしくは、記事をご覧ください。

2016.01.14

指定した基準座標から、指定したマンハッタン距離にある座標に●を描画!

2023.02.15

Swingパッケージを使ってxy-座標とグリッド(格子)を描画するプログラムをクラスを作成しました。

2023.01.27

Graphicsオブジェクトにxy-座標とグリッド(格子)を描画するクラスを作成しました。Javaのソースコードで詳しく解説しています。

2023.01.24

2値化は、画像処理の1つの方法で、カラー画像を2つ色だけで表現する画像に変換することです。この画像処理をJavaで作ってみませんか?

2016.01.21

2値化は、画像処理の1つの方法で、カラー画像を2つ色だけで表現する画像に変換することです。この記事では、2値の画像メモリを使って変換しています。

2020.10.13

数値を2進数で表したときの各桁の「0」と「1」に対して演算を行えます。4種類の演算、AND(論理積)、OR(論理和)、XOR(排他的論理和)、NOT(否定)を詳しく説明しています。

2016.03.26

2進数の桁を左右のどちらかに指定回数だけずらすビットシフトについて詳しく解説しています。

2016.04.03

繰り返し処理(ループ)から強制的に抜けかたについて解説しています。

2017.07.14

ソート(並び替え)アルゴリズムの1つであるバブルソート(bubble sort)について詳しく解説しています。Javaのソースコード付きです。

2023.01.13

基準とする座標に最も近い座標を複数の座標から探す方法は?

2021.03.10

フルカラー(16,777,216通りの色)から選択した複数の色に、色番号を割り当てたテーブルをカラーマップといいます。

2022.08.25

24ビット(フルカラー)、32ビットカラーからR(赤)、G(緑)、B(青)、A(アルファ値)を抽出する方法を説明しています。

2020.03.23

「Javaソースコード」から実行可能な「オブジェクトコード」に変換する方法をくわしく説明しています。

2020.03.23

繰り返し処理を制御するための機能の1つである「continue」について詳しく解説しています。

2019.10.16

for文を使って、数字を順番に減らす方法を詳しく説明しています。

2022.08.28

for文を使って、数字を順番に増やす方法を詳しく説明しています。

2022.08.28

フルカラーの画像を新しく作る方法を詳しく解説しています。Javaのソースコード付きです。

2020.03.23

縦と横ピクセル数と背景色を渡してPNG形式の画像を新しく作る方法を詳しく解説しています。Javaのソースコード付きです。

2020.03.23

1から6のサイコロの目が出る確率を割り出すプログラムの作りかたを解説しています。

2020.05.07

2つのサイコロを振って同じ目が出る確率を割り出すプログラムの作り方を解説しています。

2020.08.25

与えられた整数の桁数を求めるプログラムの作り方を説明します。for文を使っています。

2023.04.23

与えられた整数の桁数を求めるプログラムの作り方を説明します。while文を使っています。

2023.04.23

double型のもつ誤差について解説しています。

2016.02.15

画像の周りに縁を付ける処理について解説しています。Javaのソースコード付きです。

2015.12.21

カラー画像の輪郭だけを残すプログラムを作ってみませんか?

2019.04.04

ビッグエンディアン、リトルエンディアンって何?

2022.09.15

Calendarクラスを使って月末の日付を求める方法を解説しています。

2022.10.31

1から10の整数値のうち、偶数だけをコンソール出力するJavaのソースコードを紹介しています。for文を使って作成しています。

2022.09.05

1から10の整数値のうち、偶数だけをコンソール出力するJavaのソースコードを紹介しています。while文を使って作成しています。

2022.09.05

フルカラー(24bit)画像を縦横のサイズを2倍の画像に変換するソースコードを解説します。

2020.03.23

指定したファイルが存在するかを判定する方法を説明しています。

2016.11.23

指定したファイルのサイズ(byte)を取得する方法を説明しています。

2021.04.02

指定したフォルダに格納されているファイル名を配列に格納する方法を説明しています。

2016.11.23

指定したファイルの内容をbyte型の配列に格納する方法を説明しています。

2021.04.05

画像の上下を入れ替える方法を解説しています。

2012.10.21

フォルダー(folder)の意味を説明しています。

2022.08.14

自然界に現れる黄金角について解説しています。興味のある方は是非ご覧ください。

2020.03.23

Swingパッケージを使ってフレームを表示する方法を解説しています。

2020.03.23

Swingパッケージを使って数式のグラフを表示する方法を解説します。サイン(sin)カーブを表示するJavaソースコードを紹介しています。

2019.09.14

等倍で画像を描画する方法を解説します。GUIライブラリSwingを使っています。

2019.11.10

Swingを使ったライン描画の仕方を解説しています。

2015.11.14

円と楕円の描画方法を解説しています。Swingを使っています。

2018.11.14

長方形(矩形の)の輪郭と、塗りつぶされた長方形を描画する方法を解説します。Swingを使っています。

2020.03.23

横方向に色を滑らかに変化するグラデーション画像を作成する方法を解説しています。ソースコード付きです。

2020.03.23

画像の中心から放射状に色を滑らかに変化するグラデーション画像を作成する方法を解説しています。ソースコード付きです。

2020.03.23

画像の4隅の色を与えてグラデーション画像を作成する方法を解説しています。ソースコード付きです。

2015.12.02

カラーの画像を白・灰色・黒だけで表現した画像に変換する方法を解説しています。Javaのソースコード付きです。

2020.03.23

NTSC 加重平均法を使ったグレースケール変換を紹介しています。Javaのソースコードを使って詳しく解説しています。

2016.01.26

"Hello World"を表示するプログラムを作ってみませんか?

2020.03.23

小数で表した時間を、整数の時分秒に変換するプログラムの作り方を解説しています。3.6時間は、何時間何分何秒?

2017.03.02

Javaで読み書きが行える画像フォーマットの種類を取得する方法を解説しています。

2022.08.03

画像全体の画素の色RGBの平均値を計算する方法をソースコードを使って解説しています。

2023.05.04

簡単な「じゃんけん」ゲームの作り方をソースコードを使って詳しく説明しています。

2023.05.22

連続で「じゃんけん」ができるプログラムの作り方をソースコードを使って詳しく説明しています。

2023.05.23

Swingパッケージを使ってグラフィック表示を行う方法を解説しています。

2020.03.23

画像処理プログラムの簡単な例として、JPEGフォーマットの画像ファイル(.jpg)を、PNGフォーマットの画像ファイル(.png)に変換するソースコードを解説します。

2020.03.23

最も単純な探索アルゴリズム、リニアサーチをJavaのソースコードで解説しています。

2020.03.23

1つだけ違う文字を目視で探す「文字の間違い探し」をJavaで作成しました。

2020.06.02

トランプ(カード)を扱うクラスを紹介しています。

2019.08.05

円の面積を計算する公式を使って、円の面積を計算する方法を説明しています。記事でくわしく説明しています。興味のある方は、ご覧ください。

2020.03.23

平行四辺形の面積を計算する方法を説明しています。図を使って面積の計算方法をくわしく解説しています。

2020.03.23

台形の面積を計算する方式を使って面積を計算する方法を説明しています。Javaのソースコードと図を使って計算方法をくわしく解説しています。

2020.03.23

底辺と高さを使った三角形の面積を計算する方法を説明しています。図を使って詳しく解説しています。

2020.03.23

JavaのMath.sqrtメソッドを使わない平方根の計算方法を解説。ソースコードを使って詳しく解説しています。

2022.12.16

円を小さな台形に分割して、その面積の合計で円周率πを計算する方法を紹介しています。図とJavaのソースコードでくわしく説明しています。

2019.06.21

立方根の意味と、Math.cbrtメソッドの使い方をソースコードを使って詳しく解説しています。

2022.10.06

公約数について解説しています。興味がある方はご覧ください。

2020.07.08

cos(コサイン)の意味と、Math.cosメソッドの使い方をソースコードを使って詳しく解説しています。

2020.03.23

自然界の現象に数多く出現するフィボナッチ数列のプログラムを作ってみませんか?

2017.01.23

与えられた2つの自然数の最大公約数を地道に求めるJavaソースコードを紹介しています。

2020.03.23

与えられた2つの自然数の最小約数の掛け算を繰り返して最大公約数を求めるJavaソースコードを紹介しています。

2020.03.23

ユークリッドの互除法による最大公約数の求め方を解説しています。Javaのソース付きです。

2020.03.23

円の中に含まれる格子の数と格子の外の数から円周率πを計算する方法を紹介しています。図とJavaのソースコードでくわしく説明していますので、興味のある方は記事をご覧ください。

2020.12.22

ヘロンの公式は、三角形の3つの辺の長さから面積を計算する公式です。この公式を使って三角形の面積を計算するjavaソースコードを紹介しています。

2020.03.23

3つの値のうち、一番小さい値と、一番大きい方の値を取得する方法。配列は不使用。

2020.06.18

関数f(x)が与えられたときf(x)=0となるxを数値計算の反復によって求める方法を詳しく解説しています。

2019.05.22

数値微分を使ったニュートン法で平方根を計算する方法を紹介しています。興味のあるかたは是非ご覧ください。

2019.05.23

反復計算の回数の上限があるニュートン法の解法ソースコードを紹介しています。

2019.05.24

整数値の指定した位を求める方法を詳しく解説しています。

2020.03.23

配列を使って素数を判定するプログラムを紹介しています。是非、ご覧ください。

2016.02.02

指定した個数の素数の出力するJavaソースコードを紹介しています。

2023.01.03

二次方程式の解を求めるプログラムを作ってみませんか?

2022.10.17

sin(サイン)の意味と、Math.sinメソッドの使い方をソースコードを使って詳しく解説しています。

2020.03.23

平方根の意味と、Math.sqrtメソッドの使い方をソースコードを使って詳しく解説しています。

2020.03.23

整数だけを使って平方根を計算する方法を説明しています。興味のある方は、記事をご覧ください。

2016.02.12

Java仮想マシン内のメモリ容量を取得するプログラムを作ってみませんか?

2016.12.14

画像の左右を入れ替える方法をソースコードを使って詳しく解説しています。

2020.10.06

このサイトのオリジナルクラスのMyBufferedImage0クラスを利用して、JPEG、PNG、BMP、TIFFなどの各種画像の横と縦のピクセル数を求めるプログラムを紹介しています。

2022.11.19

画像の一部を切り出して、新しい画像に保存する方法を解説しています。ソースコード付きです。

2023.02.23

このサイトのオリジナルクラスのMyBufferedImage0クラスを利用して、JPEG、BMP、TIFFなどの各種画像ファイルをPNG形式のファイルに保存するプログラムを紹介しています。

2022.11.18

BufferedImageクラスを利用して、利便性の高い画像操作クラスを作成しました。興味のある方は、是非ご覧ください。

2022.11.16

カラーの画像を、N個のグレー色(白/灰色/黒)で表現した画像に変換する方法を説明しています。

2017.11.17

フルカラー(24bit)画像を色反転(ネガティブ)画像に変換するソースコードを解説しています。Javaのソースコード付きです。

2020.03.23

乱数を使って指定サイズのノイズ画像を作る方法を解説します。Javaのソースコード付きです。

2016.05.26

乱数を使って指定の画像にノイズ画像を加える方法を解説します。

2016.06.14

乱数を使って指定サイズのノイズ画像を作る方法を解説します。ノイズが発生する割合はパーセントで指定します。

2020.11.11

オブジェクト指向の考え方を、Javaのソースコードを使って詳しく解説しています。興味のある方は、是非ご覧ください。

2022.09.02

1から10の整数値のうち、奇数だけをコンソール出力するJavaのソースコードを紹介しています。for文を使って作成しています。

2022.09.05

1から10の整数値のうち、奇数だけをコンソール出力するJavaのソースコードを紹介しています。while文を使って作成しています。

2022.09.05

画像の幅と高さを指定して黒く塗りつぶした円を描画する方法を紹介しています。Javaのソース付きです。

2019.11.11

同じサイズの円を縦と横方向に同じ間隔で並べて出来る模様の画像を作成する方法を紹介。

2019.06.14

できるだけ隙間がなくなるように円を並べて出来る模様の画像を作成する方法を紹介。

2019.06.17

市松模様の画像をJavaで作ってきませんか?サンプルソースを使って、作り方を詳しく説明しています。

2019.03.04

黒と白の水平線を交互に描画した画像(ストライプ)を作成する方法を解説しています。ソースコード付きです。

2019.02.26

傾き45°の線の縞模様画像を作成する方法を解説しています。ソースコード付きです。

2019.03.20

黒と白の垂直線を交互に描画した画像(ストライプ)を作成する方法を解説しています。ソースコード付きです。

2019.02.26

黒と白の放射状模様画像を作成する方法を紹介しています。

2019.04.30

円の中心座標(0,0)、半径rで表される円の円周上のランダムな座標を求めるJavaのソースコードを紹介しています。ラジアンを乱数で発生して座標を計算しています。

2019.09.27

円の中心座標(0,0)、半径rで表される円の円周上のランダムな座標を求めるJavaのソースコードを紹介しています。度単位の角度の乱数をラジアンに変換して座標を計算しています。

2019.09.27

円の中心座標(ox,oy)、半径rで表される円の円周上のランダムな座標を求めるJavaのソースコードを紹介しています。

2019.09.27

トランプゲームの1つポーカーの役を判定をプログラムを作成してみませんか?。興味のある方は、ご覧ください。

2020.08.27

素因数分解は、自然数を素数の積(掛け算)で表すことです。この記事では、素因数分解のJavaのソースコードを解説しています。

2022.08.25

変数やクラスに格納されている値をコンソール出力する方法は?

2020.03.23

変数やクラスに格納されている値をフォーマとを指定してコンソール出力する方法は?

2021.08.04

ソート(並び替え)アルゴリズムの1つであるクイックソートについて詳しく解説しています。Javaのソースコード付きです。

2019.09.06

画像を180度回転する方法を解説しています。Javaのソースコード付きです。

2015.11.02

ランタイムクラス(Runtime Class)の意味を説明しています。興味がある方は是非ご覧ください。

2022.08.10

キーボードを使って値を入力する方法を解説しています。ソースコード付きです。

2020.08.19

キーボードで入力した整数値を配列に格納するメソッドの作り方を解説しています。

2020.08.19

キーボードを使って実数値(double)を入力する方法を解説しています。Scannerクラスを利用しています。

2023.03.09

キーボードを使って実数値(double)を2つ入力する方法を解説しています。Scannerクラスを利用しています。

2023.03.16

キーボードを使って整数値を入力する方法を解説しています。Scannerクラスを利用しています。

2023.03.08

キーボードを使って整数値を2つ入力る方法を解説しています。Scannerクラスを利用しています。

2023.03.16

キーボードで入力した整数値を配列にリストするメソッドの作り方を解説しています。

2020.08.19

キーボードで入力された実数の角度からsin(サイン)、cos(コサイン)を計算し、コンソール出力する方法を解説します。

2023.04.10

キーボードを使って入力した整数値の絶対値を求める方法を解説しています。

2023.03.10

キーボードを使って入力した整数値を2乗する方法を解説しています。

2023.03.10

配列に格納されている数値をランダムに並び替える方法を詳しく解説しています。ソースコード付きです。

2016.01.31

画像全体をぼやけた感じにする処理のJavaソースコードを紹介しています。、

2016.08.09

配列に格納されている値を順番に並び替える方法を解説しています。

2019.03.11

平方(二乗)の表を作成するJavaソースコードを紹介。

2022.10.03

画像を、幾何学模様のカラフルなガラスを張って作られたような画像に変換する方法を解説しています。ソースコード付きです。

2017.03.01

文字列を構成する文字コードをbyte型の配列に格納する方法を解説しています。是非、ご覧ください。

2020.10.29

文字列の長さを取得する方法を詳しく解説しています。

2020.03.23

文字列の中の大文字を小文字に変換する方法を詳しく解説しています。

2020.03.23

文字列の初期化方法を詳しく解説しています。

2020.03.23

文字列の前後にある目視出来ない文字(半角スペース、タブ、改行など)を削除するメソッドについて解説しています。

2020.3.23

文字列の中の小文字を大文字に変換する方法を詳しく解説しています。

2020.03.23

StringクラスとStringBuilderクラスを利用したプログラミングの仕方を紹介しています。

2016.12.16

Javaで文字列を扱うStringBuilderオブジェクトを使って文字列に文字列を追加、文字列に文字列に変換した数値を追加する方法を解説しています。

2022.12.10

Javaで文字列を扱うStringBuilderオブジェクトのバッファ容量を取得する方法を解説しています。

2022.11.28

Javaで文字列を扱うStringBuilderオブジェクトを使って文字列の一部を範囲指定で削除する方法を解説しています。

2022.12.10

Javaで文字列を扱うStringBuilderオブジェクトの中の文字列の長さを取得する方法を解説しています。

2022.11.26

Javaで文字列を扱うクラスStringBuilderをプログラムの中で利用できるように初期化する方法を解説しています。

2022.11.28

BufferedImage.subimageメソッドを使って、画像の一部を矩形(長方形)で切り出す方法を解説しています。

2016.2.22

テキストで塗りつぶし円を表現する方法を紹介します。興味のある方は是非ご覧ください。

2020.06.03

テキストで表示される市松模様をJavaで作ってきませんか?サンプルソースを使って、作り方を詳しく説明しています。

2019.03.18

テキストで横縞模様を表現するJavaソースコードを紹介しています。

2020.03.23

テキストで塗りつぶし直角三角形を表現する方法を紹介します。下の方が底辺の三角形です。

2021.01.20

テキストで塗りつぶし直角三角形を表現する方法を紹介します。上の方が底辺の三角形です。

2021.01.20

指定した時間(ミリ秒)の間、プログラムを停止させる方法について詳しく解説しています。Javaのサンプルソースコード付きです。

2022.11.25

0から90°のsin(x)、sin(x)の表を作成する方法をソースコードを使って詳しく解説しています。

2022.09.24

0から90°のsin(x)、sin(x)、tan(x)の表を作成する方法をソースコードを使って詳しく解説しています。

2022.09.24

0から359°のsin(x)、sin(x)、tan(x)の表を作成する方法をソースコードを使って詳しく解説しています。

2022.09.24

西暦を与えて閏年か平年かを判定するプログラムを紹介しています。

2019.09.28

Calendarクラスを利用して、閏年か平年かを判定するプログラムを紹介しています。

2022.11.16

広告