クラス フィールド
オブジェクト指向プログラミングの本質は、プログラムをオブジェクトの相互作用として表現することです。
 
オブジェクトは、特定のプロパティと特定の操作を持つある種のエンティティです。

オブジェクトは、もともと現実をシミュレートするために作成されました。私たちの周りの多くのものをオブジェクトとして表すことができます。たとえば、最近読んだ本は、「名前」、「著者」、「年齢区分」、「本のテキスト」、「ページ数」などのプロパティを持つオブジェクトと考えることができます。 「本を読む」、「本を焼く」などの操作を実行できます。
Javaプログラミング言語の用語では、これらの「プロパティ」 フィールドと呼ばれ、オブジェクトに対する操作はメソッドと呼ばれます。
Java は静的に型付けされた言語であるため、オブジェクトは何らかのパターンに従って作成する必要があります。 Java では、そのようなテンプレートは クラス です。 クラスは、特定のタイプのオブジェクトが持つことができるフィールドと、それに定義されている操作を記述します。
class object の違いは、「car」の違いに似ています。そして「トヨタ カムリ、チェブレコボ通りの 5 番目の家に駐車」.

Java でフィールドを持つオブジェクトの独自のクラスを作成する手順を検討してください。 クラスの本 { 文字列名; 文字列の作成者名; int ageRequirement; 文字列テキスト; int pageCount; } このコードは、クラスBook」を作成します。クラス «Book» の オブジェクト 2 つの整数プロパティ («ageRequirement» および «pageCount» という名前) と «String» 型の 3 つのプロパティがあります。 ("name"、"authorName"、および "text" という名前で。
フィールドを持つクラスを作成するための一般的な構文は次のとおりです。
  クラス<クラス名> { <第 1 プロパティ タイプ> <最初の物件名> <第二物件種別> <第二物件名> &helli; <最後のプロパティのタイプ> <最後の物件名> }

もちろん、Java では、この方法だけでなく (メソッド、アクセス修飾子などもあります)、クラスを作成できますが、それについては後で詳しく説明します。

クラスメソッド
Java ではオブジェクトに対する操作をメソッドと呼びます。 メソッドは数学関数に似ており、引数を受け取り値を返すことができます。一方、Java のメソッドもオブジェクトのすべてのフィールドにアクセスできます。

クラス内にメソッドを作成するには、そのメソッドをクラスに含める必要があります。たとえば、書籍に関する情報を印刷し、ユーザーがその書籍を読むのに十分な年齢に達していない場合に警告を表示する print(age) メソッドを定義できます。

    クラス 
    {
        文字列名;
        文字列著者名;
        int ageRequirement;
        文字列テキスト;
        int pageCount;
        // print メソッドを作成します
        void print(int 年齢)
        {
            システム.アウト.< span style="color:#7d9029">println("名前: "+名前);
            システム.アウト.< span style="color:#7d9029">println("作成者: "+著者名);
            システム.アウト.< span style="color:#7d9029">println("ページ数: "+整数.toString(ageRequirement);
            // ここに確認コードが入ります
        }
    }

 
メソッドを作成するための構文を分析してみま
しょう。 1) メソッドの最初の行はその署名です。
2) メソッドの戻り値の型が最初に記述されます。このメソッドは値を返さないため、void と記述します。
3) 次に、署名にはメソッドの名前 (print) が含まれます。
4) 括弧内には引数のリストがあります。引数はカンマで区切られます。各引数について、その型と名前をスペースで区切って指定します。この場合、引数は 1 つだけで、型は int 、名前は age であるため、カンマはありません。
5) その後に、中括弧で囲まれたメソッド コードが続きます。メソッドから値を返すには、return <value>; と記述します。この例では、メソッドは何も返さないため、return は省略できます。メソッドの実行を途中で終了するには、return; と記述します。
6) クラス自体では、このクラスのオブジェクトのフィールドを名前で参照できます。

アクセス修飾子
デフォルトでは、Java のクラスのすべてのフィールドメソッドプライベートです。つまり、このクラスのオブジェクトの外部では、どのメソッドもこのクラスのオブジェクトのフィールドとメソッドを使用できません。

フィールドとメソッドは、アクセス修飾子 public を使用して公開できます。フィールドを非公開にする private 修飾子もあります。すべてのフィールドとメソッドはデフォルトでプライベートであるため、オプションです。 public  および private 修飾子の使用例を次に示します。 クラスの本 { パブリック文字列名; 文字列の作成者名; プライベート int ageRequirement; 文字列テキスト; public int pageCount; int getTextLength() { テキストの長さを返す(); } public int getAverageLetterCount() { getTextLength() / pageCount を返します。 } プライベート int getDifficuiltyLevel() { return 5 * ageRequirement * text.Length(); } }
このバージョンの Book クラスでは、フィールド name   および pageCount   が、他のオブジェクトでの読み取りと変更のために公開されます。 getAverageLetterCount() メソッドは、他のクラスのオブジェクトから呼び出すこともできます。他のすべてのフィールドとメソッドは非公開のままで、このクラスのメソッドでのみ使用できます。パブリック メソッド getAverageLetterCount() では、プライベート メソッド getTextLength() を呼び出すことができます。これは、getAverageLetterCount() がクラス自体に属しているためです。ただし、別のクラスのメソッドからは機能しません。

しかし、なぜフィールドを非公開にするのでしょうか? Java コードでは、ほとんどの場合、プライベート フィールドのみが表示されます。実際には、プライベート フィールドへのアクセスがオブジェクトのパブリック メソッドを介して実行される場合、プライベート フィールドへのそのようなアクセスにより、追加のアクションとチェックを実行することが可能になります。これについては、カプセル化に関するレッスンで詳しく説明します。

これまでのレッスンでは、オブジェクトを作成するためのテンプレートであるクラスの作成について説明しました。同じレッスンでは、オブジェクト自体の作成と使用のプロセスについて説明します。

リンク
Java 言語では、変数にオブジェクトを格納することはできません。代わりに、Java にはメモリ内のオブジェクトの場所を指す参照があります。
オブジェクト参照型の変数を作成する構文は次のとおりです。
<コード><クラス名> <変数名>;
オブジェクトが参照されるクラスをすぐに指定していることは注目に値します。

例: Book クラスを指す「b」という名前の変数:

ブック b;

同様に、クラス フィールドを作成できます (そこにアクセス修飾子を追加できます)。参照の配列を作成し、メソッドから返すことができます。例:

パブリック クラス ライブラリ {
  公開書籍[]書籍;
  パブリックブック findBookWithName(文字列名) {
// 適切な本を見つけるコード
  }
};



結論: 多くの方法で、他の基本型 (int、long、double など) の変数と同じ方法で参照を操作できます。