개발의 시작과 끝
2020.03.05 / Day - 21 자바 생성자, super 생성자 복습 본문
bbm - 8일차
생성자(Constructor)
class Main {
public static void main(String[] args) {
사람 a사람 = new 사람(29, "홍길순", "대전", "쾌활");
System.out.println(a사람.나이);
// 출력 : 20
System.out.println(a사람.이름);
// 출력 : 홍길동
System.out.println(a사람.고향);
// 출력 : 한양
System.out.println(a사람.성격);
// 출력 : 착함
}
}
class 사람 {
int 나이;
String 이름;
String 고향;
String 성격;
사람(int 나이, String 이름, String 고향, String 성격) {
this.나이 = 나이;
this.이름 = 이름;
this.고향 = 고향;
this.성격 = 성격;
}
}
생성자를 만들 때 생성자명은 무조건 클래스명과 동일하게 지어야 한다.
리턴타입 없으며, 객체를 만들 때 반드시 한 번 실행된다.
bbm - 9일차
super 생성자
suiper 생성자는 부모 클래스의 생성자를 호출하며, 생략가능하다.
class Main {
public static void main(String[] args) {
new 사람();
new 청둥오리();
}
}
class 생물 {
생물() {
// 이 함수는 부모 클래스 생성자를 자동으로 호출한다.
System.out.println("생물이 생성되었습니다.");
}
}
class 동물 extends 생물 {
동물() {
super();
System.out.println("동물이 생성되었습니다.");
}
}
class 사람 extends 동물 {
사람() {
super();
System.out.println("사람이 생성되었습니다.");
}
}
class 청둥오리 extends 오리 {
청둥오리() {
System.out.println("청둥오리가 생성되었습니다.");
}
}
class 오리 extends 동물 {
오리() {
System.out.println("오리가 생성되었습니다.");
}
}
▼ 출력
생물이 생성되었습니다.
동물이 생성되었습니다.
오리가 생성되었습니다.
청둥오리 생성되었습니다.
'자바 복습' 카테고리의 다른 글
2020.03.07 / Day - 23 자바 배열 재 복습 (0) | 2020.03.07 |
---|---|
2020.03.06 / Day - 22 자바 static 메서드 복습 (0) | 2020.03.06 |
2020.03.04 / Day - 20 자바 인스턴스 변수 복습 (0) | 2020.03.04 |
2020.03.02 / Day - 18 자바 abstract 클래스 복습 (0) | 2020.03.02 |
2020.03.01 / Day - 17 자바 클래스 복습 (0) | 2020.03.01 |