서로 관련있는 데이터들을 하나의 단위로 묶어두면 편할 것이다! 라는 생각에

클래스라는 개념이 등장하는 가장 기본적인 이유이다.

 

클래스는 하나의 타입이다.

(사용자 정의 타입) 

 

package section1;

public class Person1 {
	
	public String name;  //field, data memeber
	public String number;
}

Person1 클래스 생성

 

package section1;

public class code01 {

	public static void main(String[] args) {

		Person1 first = new Person1();  //object
		
		first.name="John";
		first.number="01012345678";
		System.out.println("Name : " + first.name + "," + "Number : " + first.number);
		
		Person1[] members= new Person1[10];
		members[0] = first;
		members[1] = new Person1();
		members[1].name = "David";
		members[1].number = "01098765432";
		
		System.out.println("Name : " + members[1].name + "," + "Number : " + members[1].number);

		
	}

}

Person1타입 으로 first변수를 만들고 

직접 데이터를 넣어주어서 확인해보고

 

Person1타입 배열 members를 만들고

데이터를 넣어줬다!

 

first 라는 변수에는 new로 만든 객체의 주소가 저장이된다

 

Person1 first; 

   - 아직 객체는 생성되지 않고 변수 first만 만들어진다 이때 변수의 값은 null이다

 

first = new Person();

   - new Person1() 명령에 의해 객체가 만들어지고 first에 그 주소를 저장한다.(참조하게됨)

 

first.name = "John"; first.number = "01023456";

   -first가 참조하고 있는 Person1 타입의 객체의 name, number라는 이름의 필드에 데이터를 저장한다.

 

모든 프리미티브 타입의 변수는 보통 변수이다.

즉 변수 자체에 값이 저장된다.

 

프리미티브 타입이 아닌 모든 변수는 참조변수이다.

즉 실제 데이터가 저장될 "객체"는 new명령으로 따로 만들어야 하고, 참조변수에는 그 객체의 주소를 저장한다.

 

 

 

 

 

 

 

 

 

 

 

 

 

+ Recent posts