Constructor(생성자)

  • 생성자 메서드의 이름은 클래스의 이름과 동일해야 함
  • 생성자 메서드는 리턴 값을 가지지 않음
  • 생성자 메서드는 인스턴스가 생성될 때 자동으로 호출됨
  • 그래서 사용자 마음대로 호출 시기를 지정할 수 없음
  • 그 외의 모든 규칙은 일반 메서드와 동일함(매개 변수, 오버로딩 등)
  • 매개 변수를 받는 생성자가 생기면 default 생성자는 사라짐
    1. 부모 클래스에 default 생성자를 작성함
    2. 자식 클래스에 매개 변수를 받는 생성자를 작성

 

▽ 예제 코드 1 ▽

public class Tv {

	private int channel;
	private int volume;

	public Tv() {}
	public Tv(int channel, int volume) {
		this.channel = channel;
		this.volume = volume;
	}
	
	public int getChannel() {
		return channel;
	}
	
	public void setChannel(int channel) {
		this.channel = channel;
	}
	public int getVolume() {
		return volume;
	}
	public void setVolume(int volume) {
		this.volume = volume;
	}
	
}

 

 

▽ 예제 코드 2 ▽

		Tv tv = new Tv(5, 10); // 생성자 메서드 콜
		
		// Heap에 변수를 만들면 초기값은 0임
		// Stack에 들어간 변수의 초기값은 쓰레기 값이 들어감
		System.out.println((tv.getChannel()));
		tv.setChannel(5);
		tv.setVolume(10);
		
		System.out.println(tv.getChannel());
		System.out.println(tv.getVolume());

 

 

 

+ Recent posts