0
0

【Java】インスタンス・コンストラクタ

Last updated at Posted at 2024-04-09

0.はじめに

Javaを大学で学んでおります。
概念や特徴を以下の文類に分けてまとめました。

関連学習

【Java】用語
【Java】メソッド・型
【Java】オブジェクト指向
【Java】インスタンス・コンストラクタ
【Java】例外処理
【Java】注意点・ルール
【Java】コードの記述向上にむけて(個人用memo)

1.インスタンス

車で言う車体部分、実体であり生成できるもの
クラスを元に生成したオブジェクトの実体
クラス内でフィールドの宣言を行ったものの、実体を使用することができない
そのため実体を生成する必要がある
その生成したものをインスタンスと言う

Bodyクラス内からnameweightを利用したいためmanという実体を生成したい

//クラスの宣言:クラス名 変数名
Body man

//実体(インスタンス)の生成:変数名 = new クラス名
man = new Body

//Bodyというクラスからmanという実体を生成したい場合は続けて記述すると以下になる
Body man = new Body();

イメージ

studentという変数がname,height,weightというフィールドを参照し
実体を生成している
image.png

インスタンスメソッド

クラスに属するメソッド
インスタンスメソッドとして定義する場合はstaticの記述がない

public class Method{		
	public viod myMethod{	
		//メソッド名
	}	
}		

staticが記述されていない場合はクラスのインスタンスに対して呼び出される必要がある
staticが記述されている場合はクラスレベルのメソッドとなりクラスのインスタンス化なしで呼び出しが可能

2,コンストラクタ

インスタンスの初期化のこと、初期設定
コンストラクタ名はクラス名で記述される、クラスの名前でpublic クラス名と記述されている箇所はコンストラクタされていると認識すること

RPGを題材にした場合のクラスにおいて、
都度設定をせず事前にHPなどのフィールドを決定しておく場合もある

public class Room{					
	//以下にフィールドを記述				
	String name;				
	String age;				
					
	//以下がコンストラクタ				
	public Room( String n , String a){				
	name = n;				
	age = a;				
	}				
}					

ここでインスタンスを生成
先述した引数へ渡しRoomクラスのインスタンスを生成する
naが受取りRoomクラスの各フィールドに代入がされる

public static void main(String[] args){	
	Room str1 = new Room("sato","200");
	System.out.println(str1.name); //出力:sato
}	

参考文献

スッキリわかるJava入門 第3版
著者:中山清喬 と国本大悟 発行所:株式会社インプレス

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0