[14日]04オブジェクトのプロパティはメンバー変数であり、オブジェクトの機能はメソッドによって実現される/05です.インスタンスとバックメモリの作成


Part02. 객체지향 프로그래밍 ch 02. 객체지향 입문

04.オブジェクトの属性はメンバー変数であり、オブジェクトの機能はメソッドによって実現される🩸


<学生クラスを定義して使用>

  • 学生クラスのプロパティをメンバー変数として宣言し、メソッドを実装します.
  • package ch04;
    
    public class Student {
    	
    	public int studentID;
    	public String studentName;
    	public String address; 
    	
    	public void showStudentInfo() {
    		System.out.println( studentID + "학번인 학생의 이름은 " + studentName + " 이고, 거주지는 " + address + "입니다.");
    	} //여기까지 class의 속성을 만들어주는 것
    	
    	public String getStudentName() {
    		return studentName;
    	}
    	
    	public void setStudentName( String name) {
    		studentName = name;
    	}
    } //여기까지 메서드를 만들어주는 부분
    
  • クラスの作成
  • package ch04;
    
    public class StudentTest {
    
    	public static void main(String[] args) {
    		
    		Student studentwjj = new Student(); //studentwjj은 참조변수라고 부른다. 참조변수의 역할은 생성되는 곳의 메모리 위치를 나타냄. 이것을 통해 메서드나 변수 호출함(아래)
    		
    		studentwjj.studentID = 69313274;
    		studentwjj.setStudentName("JANG WOO JEON");
    		studentwjj.address = "서울시 강남구";
    		
    		studentwjj.showStudentInfo();
  • 学生クラスを生成し、生成されたオブジェクト(インスタンス)->出力結果に異なる名前とアドレスを入力します.
  • 今日の勉強の感想(04.):
    あまりにも理解していないので、授業を8回くらい見て理解しましたが・・・

    05.インスタンスとHip Memoryの作成🦠


    <インスタンス(instance)>

  • クラスは、オブジェクトの属性を定義し、実装機能によってコード状態
  • を作成する.
  • 実際のクラスに基づいて作成されたオブジェクト(インスタンス)には、異なるメンバー変数値があります.ex)学生のクラスで作成された各インスタンスには、異なる名前、学号、および学年値があります(
  • ).
  • の新しいキーワードを使用してインスタンス
  • を作成する.

    <バックメモリ>


    生成された
  • インスタンスは、ダイナミックメモリ(スタックメモリ)
  • に割り当てられる.
    プログラマは、
  • CまたはC++言語で使用される動的メモリ(free()またはdeleteを使用)
  • を無効にする必要があります.
  • Javaでは、Garbage Collectorが非周期メモリ
  • を回収する.
  • は、1つのクラスから複数のインスタンスを作成し、各インスタンスは異なるメモリアドレスを有する
  • package ch04;
    
    public class StudentTest {
    
    	public static void main(String[] args) {
    		
    		Student studentwjj = new Student();
    		
    		studentwjj.studentID = 69313274;
    		studentwjj.setStudentName("JANG WOO JEON");
    		studentwjj.address = "서울시 강남구"; //studentwjj. 뒤에 오는 것들을 각각 다른 메모리에 위치하며, 그렇기 때문에 각각 다른 값을 줄 수 있는 것이다. 다시말해, class는 하나지만 그 안의 instance는 여러개일 수 있다.(그 instance는 heap이라는 동적메모리에 할당된다)
    		
    		studentwjj.showStudentInfo();
    		
    	}
    
    }

    <参照変数、参照値>



    ch04.Studentwjj@49476842
  • ch04.Studentwj:パッケージ名、クラスプール名
  • @49476842:アドレス値(参照値参照値)Studentwjjは、既に着席しているアドレス
  • を示す.

    <クリーンアップ用語>


    ≪オブジェクト|Objects|emdw≫:オブジェクト・プログラム向けのターゲット、生成されたインスタンス
    ≪クラス|Class|ldap≫:プログラミング・オブジェクトのステータスとして定義されます.
    例:newキーワードを使用してメモリにクラスを作成した状態
    メンバー変数:クラスの属性、属性
    メソッド:メンバー変数を使用してクラス機能を実装する関数
    ≪参照変数|Reference Variables|oem_src≫:メモリに作成されたインスタンスへの変数
    ≪参照値|Reference Value|oem_src≫:インスタンスのメモリ・アドレス値を作成します.
    今日の勉強の感想(05.):
    まだまだ馴染みが薄い・・・