public class Ex02_class{
	
    public static void main(String[] args){
		int x; // 일반변수, 초기화하지 않으면 연산이 불가하다.
        x = 50;
        System.out.println(x);
        
        Test2 t1; // 객체선언(레퍼런스 변수 선언)
        // t1.a=100; 컴파일 오류. 메모리가 할당되지 않았기 때문이다.
		
        t1 = new Test2(); // 메모리 할당. 객체를 생성함.
        	// new 생성자();
            
        t1.name = "김자바";
        t1.a=50;
        t1.write(); // 메소드 호출. 
        
        Test t2 = new Test2(); // 객체 생성과 메모리 할당.
        t2.write();

	}

}
// 클래스 : 필드(데이터를 저장한 저장공간)+ 메소드(어떤 일을 하는 것)
class Test2 {
	// 필드 선언(인스턴스 변수)
	// 필드는 초기화하지 않으면 객체가 생성되는 시점에 객체는 null, 숫자 변수는 0으로 초기화 된다.
    String name;
    // 객체가 생성될 때 null로 초기화 된다.
    int a;
    // 객체가 생성될 때 0으로 초기화 된다.
    int b=10;
    // 객체가 생성될 때 10으로 초기화 된다.
    
    // 메소드 (인스턴스 메소드)
    public void write() {
    	System.out.println(name+" : "+ a + " : " + b);
    }
    

}

+ Recent posts