はじめに
この記事は備忘録である。
参考書レベルの内容だが、本記事に掲載するコードについては、
間違えたものが中心となる。これは実際にコーディング中に間違えた部分を掲載し、自分で反省するために投稿するという目的によるもの。
また、後日にJavaSilver試験問題の勉強を兼ねて復習するため、深い部分の話はここでは触れない。
なお今回は間違えを扱わない。クラスの話はJavaにおいて重要なうえ、狙って間違えられるほど僕の理解も進んでいない。定義を正しい形で再確認するため、ご容赦いただきたい。
環境
言語:Java11、JDK13.0.2
動作環境:Windows10
クラス
class helloWorld
{
public static void main(String[] args)
{
System.out.println("Hello,world!");
}
}
これは一番簡単なプログラムであり、JavaにおけるHello,world!
出力を行うものである。最初の行に出てきているが、今回のテーマはクラス(class
)。Javaを扱う上で必ず扱う機能となる。
参考書の「やさしいJava 第7版」によると
クラスとは、
モノの状態・性質や、それにかかわる機能をまとめながらプログラムを作成していくために使う概念
である。今の僕の理解だとclass
は、具体的な個々のモノを扱う前に参考となる見本、いわば雛型を用意する認識だ。
オブジェクト
class Cat
{
String name;
double weight;
double size;
String color;
int ID;
String voice;
//挙げ始めるとキリがない!!
}
このクラスには「一般的な猫」が持つステータスのごく一部を宣言させた。だがこれは「僕の猫」の特徴が入っているわけではない。
実際に「僕の猫」ステータスを持つmycat
をメインメソッドの処理中に作ってみる。
class myCat
{
public static void main(String[] args)
{
Cat mycat = new Cat();
//mycat変数にCatクラスのオブジェクトを生成
mycat.name = "テト";
mycat.color = "brown";
mycat.ID = 3;
System.out.println("僕の猫、名前は" + mycat.name + "。");
System.out.println("色は" + mycat.color + "、" + mycat.ID + "番目の猫だ。");
}
}
//出力結果:僕の猫、名前はテト。
//色はbrown、3番目の猫だ。
class Cat
で定義され、Cat mycat = new Cat();
でmycatに作られたのがオブジェクト(object)あるいはインスタンス(instance)である。
終わりに
次回の予定は、プログラムを触った人なら必ず最初に書くHello,World!
を出力するプログラムを扱うつもりだ。本来なら真っ先に書くべきだとは思ったが、Python
から入った身としてはJava
のHello,World
は最初からクラスを使う必要がありとても難しかったため、ここまで待った。
次の次の回では、今回割愛したフィールドやメソッドを扱う予定。
今回は内容が薄かったが、ここから先があまり自信がない部分なので、今の実力の指標として分けさせてもらう。
参考
出来るだけ自分で変数や式を書いてコンパイルしているので、完全に引用する場合はその旨記述する。