학습 목표
-기본 생성자
-사용자 정의
-생성자 여러개라면 : (오버로딩)
생성자(Constructor)는 클래스의 인스턴스, 즉 객체를 생성할 때 호출되는 특별한 유형의 메서드입니다. 객체의 초기화를 담당하며, 객체가 올바르게 사용될 수 있도록 필요한 값들을 설정하고, 필요한 초기화 코드를 실행합니다.
생성자의 주요 특징
- 생성자의 이름은 클래스의 이름과 동일해야 합니다.
- 생성자는 반환 타입을 가지지 않으며, 심지어 void 도 사용하지 않습니다.
- 객체 생성 시 new 키워드와 함께 자동으로 호출됩니다.
- 생성자는 크기 기본 생성자와 사용자 정의 생성자로 구분할 수 있습니다.
기본 생성자 (default constructor)
● 클래스에는 반드시 적어도 하나 이상의 생성자가 존재한다.
● 클래스에 생성자를 구현하지 않아도 new 키워드와 함께 생성자를 호출할 수 있음
● 클래스에 생성자가 하나도 없는 경우 컴파일러가 생성자 코드를 넣어 줌
● public Student(){}
사용자 정의 생성자(Overloaded Constructor) - 매개변수가 있는 생성자
- 사용자가 필요에 의해서 직접 생성자 코드를 넣어 주는 것을 말한다.
package ch09;
public class Bus {
//속성
int busId;// 버스 ID
String busType;// 버스 종류(시내버스,고속버스)
String company;//운영회사
//생성자가 여러개 있으면 생성자 오버로딩이라고 한다.
//매개변수 1 받는 생성자
// public Bus(int id){
// busId = id;
// }
// public Bus(int id, String type){
// busId = id;
// busType = type;
// }
//
public Bus(int id, String type, String com){
busId = id;
busType = type;
company = com;
}
//메서드
public void showInfo(){
System.out.println("----------");
System.out.println("버스 ID : " + busId);
System.out.println("버스 type : " + busType);
System.out.println("버스 company : " + company);
}
}
package ch09;
public class BusMainTest {
public static void main(String[] args) {
//생성자를 사용하는 목적은
//강제성을 부여하기 휘함이다.
Bus b1 = new Bus(133, "시내버스", "텐코");
b1.showInfo();
}// end of main
}// end of class
정리
- 기본 생성자 (컴파일러 자동 생성)
- 사용자 정의 생성자
- 생성자 여러개라면 : 생성자 오버로딩
- 생성자 객체가 생성될 때 가장 먼저 수행되는 코드이다.
'JAVA 객체 지향 핵심' 카테고리의 다른 글
(JAVA)함수,메서드, 생성자란 (0) | 2025.04.15 |
---|---|
(JAVA)버스, 학생, 지하철 만들어 보기 (0) | 2025.04.15 |
(JAVA)메소드(method)란 뭘까? - 5 (0) | 2025.04.15 |
(JAVA)함수 만들기 (연습 문제) (0) | 2025.04.15 |
(JAVA)함수(Function)란 뭘까? - 4 (0) | 2025.04.15 |