0.はじめに
Javaを大学で学んでおります。
概念や特徴を以下の文類に分けてまとめました。
関連学習
【Java】用語
【Java】メソッド・型
【Java】オブジェクト指向
【Java】インスタンス・コンストラクタ
【Java】例外処理
【Java】注意点・ルール
【Java】コードの記述向上にむけて(個人用memo)
1.インスタンス
車で言う車体
部分、実体であり生成できるもの
クラスを元に生成したオブジェクトの実体
クラス内でフィールドの宣言を行ったものの、実体を使用することができない
そのため実体を生成する必要がある
その生成したものをインスタンスと言う
例
Body
クラス内からname
やweight
を利用したいためman
という実体を生成したい
//クラスの宣言:クラス名 変数名
Body man
//実体(インスタンス)の生成:変数名 = new クラス名
man = new Body
//Bodyというクラスからmanという実体を生成したい場合は続けて記述すると以下になる
Body man = new Body();
イメージ
student
という変数がname,height,weight
というフィールドを参照し
実体を生成している
インスタンスメソッド
クラスに属するメソッド
インスタンスメソッドとして定義する場合は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クラス
のインスタンスを生成する
n
とa
が受取りRoomクラス
の各フィールドに代入がされる
public static void main(String[] args){
Room str1 = new Room("sato","200");
System.out.println(str1.name); //出力:sato
}
参考文献
スッキリわかるJava入門 第3版
著者:中山清喬 と国本大悟 発行所:株式会社インプレス