반응형

TestClass.java



public class TestClass {

	private String postCode;

	// Data를 저장하는 것이 목적인 클래스인 경우는
	// 2개의 생성자를 만들어서 줍니다
	
	public TestClass() {
		super();
	}
	
	public TestClass(String postCode) {
		super();
		this.postCode = postCode;
	}
	
	
	// 접근자 메소드
	// 멤버변수의 값을 리턴하거나 설정하는 메소드 : getter,setter
	
	public String getPostCode() {
		return postCode;
	}

	public void setPostCode(String postCode) {
		this.postCode = postCode;
	}
	
	// Static메소드   클래스의 이름으로 호출이 가능한 메소드
	public static void insa(){
		System.out.println("Hello Would");
	}
	
	
	
	
}



TestClassMain.java



public class TestClassMain {

	public static void main(String[] args) {
		// PostClass 의 객체생성
		
		TestClass obj1 = new TestClass("111-222");
		
		
		TestClass obj2 = new TestClass();
		obj2.setPostCode("222-333");
		
		// 위에 2개의 해쉬코드 확인
		// 해당 객체의 값의 주소값을 출력한다.
		System.out.println(obj1.hashCode());
		System.out.println(obj2.hashCode());
		
		// obj1, obj2의 갑을 출력
		// 직접 가져올수 없기 때문에  get메소드를 사용한다.
		System.out.println(obj1.getPostCode());
		System.out.println(obj2.getPostCode());
		
		TestClass.insa();
		
		//singleton
		TestSingleton s1 = TestSingleton.getInstance();
		TestSingleton s2 = TestSingleton.getInstance();
		
		System.out.println(s1.hashCode());
		System.out.println(s2.hashCode());
		
	}

}



TestInterface.java



// 인터페이스는 추상 메소드와 final 상수만 가질수 있다.
public interface TestInterface {

	public void disp();
	
}


TestSingleton.java



public class TestSingleton {

	// 생성자를 private 으로 변경해서 외부에서 객체 생성만 되도록 합니다.
	private TestSingleton(){}
	
	//객체 생성을 한번만하기 위해 static메소드로 설정
	public static TestSingleton single;
	
	// static 변수에 내용이 없을때는 생성해서 리턴하고
	// 없을때는 그냥 ㄱ리턴하는 Static 메소드 생성
	public static TestSingleton getInstance(){
		if( single == null){
			single = new TestSingleton();
		}
		return single;
	}
}



+ Recent posts