クラスとジェネレータの場合


クラスと作成者-基本
public class People {

/*
 * 
 * 1. 데이터 : name, age 
 * 2. 기능 : name, age 반환 / 단순 출력
 * 
 * - 개발
 * 1. 데이터 저장에 필요한 메모리
 * 2. 기능 구별, 수행을 위한 코드 작성
 *    + 객체 생성
 *    
 * - 클래스를 개발하는 것이 객체를 만드는 것은 아니다
 * 
 */

	// 멤버 변수
	String name = "ddingji";
	int age = 23;
	
	// 기본 생성자
	// 꼭 클래스 이름과 일치해야 함!
	People(){}
	
	// 메소드
	String getName() {
		return name;
	}
    
    int getAge() {
    	return age;
    }
    
	public static void main(String[] args) {
		People ddingji_k = new People();
		System.out.println(ddingji_k.name); // ddingji
		System.out.println(ddingji_k.age);  // 23
	}

}
ddingg kという名前のオブジェクトを作成し、nameとageの値を異なる値に挿入する場合は、ddingjiと23の値を追加してデータ値を変更するのは効果的ではありません.
では、作成時から作成するデータの値は?
クラスと作成者-カスタム
public class People {
	String name;
	int age;
    
    People(String name, int age){
	    // 좌측: 클래스 내부에서 정의한 name, 우측 : 외부로부터 전달받은 name
		this.name = name; 
		this.age = age;
	}
    
    public static void main(String[] args) {
		People person4 = new People("자바박", 23);
		System.out.println(person4.name); // 자바박
	}
}
クラスと作成者-getとsetメソッドの使用
public class People {
	String name;
	int age;
    
    People(String name, int age){
        this.name = name; 
        this.age = age;
    }
    
    // get 메소드 - 데이터 값을 호출해주는 메소드
    String getName() {
    	return name;
    }
    
    int getAge() {
    	return age;
    }
    
    // set 메소드 - 기존에 생성한 데이터 값을 변경해주는 메소드
    void setName(String name) {
    	this.name = name;
    }
    
    void setAge(int age) {
    	this.age = age;
    }
    
    public static void main(String[] args) {
        People person10 = new People("수정전_이름", 20);
        System.out.println(person10.name); // 수정전_이름
        System.out.println(person10.age); // 20
        
        person10.setName("수정후_이름");
        person10.setAge(30);
        System.out.println(person10.name); // 수정후_이름
        System.out.println(person10.age); // 30
	}
}