Constructor(생성자)
- 생성자 메서드의 이름은 클래스의 이름과 동일해야 함
- 생성자 메서드는 리턴 값을 가지지 않음
- 생성자 메서드는 인스턴스가 생성될 때 자동으로 호출됨
- 그래서 사용자 마음대로 호출 시기를 지정할 수 없음
- 그 외의 모든 규칙은 일반 메서드와 동일함(매개 변수, 오버로딩 등)
- 매개 변수를 받는 생성자가 생기면 default 생성자는 사라짐
- 부모 클래스에 default 생성자를 작성함
- 자식 클래스에 매개 변수를 받는 생성자를 작성
▽ 예제 코드 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());
'자바 - Java > 이론' 카테고리의 다른 글
[Java] Java Programming - 상속, 다형성, 추상화, Overriding, Implements (0) | 2020.04.02 |
---|---|
[Java] Java Programming - static 변수, static 메서드 (0) | 2020.04.02 |
[Java] Java Programming - 정보 은닉, 멤버 변수, 지역 변수 (0) | 2020.04.02 |
[Java] Java Programming - 객체 지향, 클래스 (0) | 2020.04.02 |
[Java] Java Programming - 참조 호출(Call by reference), 값 호출(Call by value), 가변 인자 매개 변수, Method Overloading (0) | 2020.04.02 |