JAvaプログラミングクラス(2)


🥰 Javaで値を渡す

  • Javaでは、他の関数スタックの値を変更することはできません.
  • javaは値転送のみをサポート(参照タイプ転送X)
  • 値タイプ、転送値
  • 参照タイプ値転送
  • 😲 static

    static:オブジェクトに関係のないメンバー変数、メソッド
  • は単一のオブジェクトではないので、オブジェクトを作成することなく
  • にアクセスできます.
  • は、明確な初期化または初期化ブロックを使用して、
  • を初期化する必要がある.

    🍔 静的用途?


    定義
  • 共通定数
  • 同じタイプのオブジェクトが共有できるデータ
  • オブジェクトを100個作成しても、staticを作成できます.
  • ただし、一般的なstaticメンバー変数はなるべく使用しない方がよい.

    🍿 静的メンバー変数

  • は特定のオブジェクトではなく、クラスに属します.
  • はいつ使いますか?(例は以下の通り)
  • public class BankAccount{
    	private int balance = 0;
        	private int accountNumber;
        	private static int lastAssignedNumber;
            //객체가 생성될 때마다 순차적으로 계좌번호를 부여할 수 있다.
            //객체에 속한 변수가 아니라, 클래스에 속한 변수이기 때문에 가능!
    }
    🐹 staticメンバー変数の近似
  • クラス名でアクセスしてこそ、誤解は生じません.
  • public class A {
    	public static final int MAX = 10;
    }
    ...
    System.out.println(A.MAX);	//클래스 이름으로 접근!
    A a1 = new A();
    //System.out.println(a1.MAX); *오해의 소지가 있음

    😮 ていすう

    final定数変数:値を指定すると、さらにXが変更されます.
    1.共通(クラス)定数]クラス内の各オブジェクトに定数が必要ない場合は、スペースの無駄を減らすためにstaticと宣言します.
    +また、通常の定数はpublicである.(従って、以下の例)
    //final double PI = 3.14;
    public static final double PI = 3.14;
    2.「対象定数」学生の入学年と同様に、対象ごとに異なる値を持つ

    😎 イニシャルブロック

  • ブロック
  • は関数に属しません
  • オブジェクトが生成されるたびに、ジェネレータが呼び出される前に実行されます.
  • 順序は
  • <明示的初期化→初期化ブロック→ジェネレータ呼び出し>である.
  • 😊 プラントメソッド


    💌 ファクトリメソッドファクトリメソッド:オブジェクトを作成するメソッド
    ex. Integer x = Integer.valueOf(10)✔作成者の代わりにオブジェクトを作成する場合の使用方法の理由
  • ジェネレータ名は常にクラス名に固定されます.逆に、メソッド名によって可読性が向上します!
  • の作成者とは異なり、
  • では異なるタイプのオブジェクトを作成できます.
  • オブジェクトを作成するたびに決定する必要はありません.既存オブジェクトのアドレス
  • を使用

    💖 Summary(混同…★☆王中尧★☆)


    試験のよい問題
    public class Student {
              private int year;				//학년 : 시작값 유동 변수
              private final int ENTRANCETYEAR;		//입학년도 : 객체 상수 - 객체마다 다른 값(생성자 초기화)
              private int currentCredit = 0;		//이수학점 : 시작값 고정 변수
              public static final int TOTALMINCREDIT = 150;	//졸업최소이수학점 : 공통(클래스) 상수 변수(명백한 초기화)
              private static int numberOfStudents = 0;	//공통(클래스) 변수(명백한 초기화)
          
              public Student (int year, int entranceYear) {	
              this.year = year;				
              ENTRANCEYEAR = entranceYear;			
         }//Student(int, int)
    }//Student
  • 汎用メンバー変数
  • オブジェクトごとに異なる値で初期化する必要があります:作成者から初期化→static学年、year入学年度
  • 初期化後固定:ENTRANCETYEARメンバー変数と宣言し、作成者によって初期化→final入学年度
  • すべてのオブジェクトが同じ値に初期化された場合:明示的な初期化または初期化ブロックを使用する→ENTRANCETYEAR単位;currentCredit卒業最小単位
  • 単位
  • すべてのオブジェクトは同じ値&初期化後固定:クラス定数変数と明示的初期化→TOTALMINCREDIT卒業最小単位
  • 静的メンバー変数TOTALMINCREDITメンバー変数は、明確な初期化または初期化ブロックを使用する.
  • 課の参考資料^w^