반응형
생성자
생성자는 인스턴스가 생성될 때 호출되는 '인스턴스 초기화 메서드'다. 인스턴스변수의 초기화 작업에 주로 사용되며, 인스턴스 생성 시에 실행되어야 하는 작업을 위해서 사용되기도 한다.
리턴값이 없음
생성자는 메서드처럼 클래스 내에 생성되고, 구조도 메서드와 유사하지만 리턴값이 없다. 그렇다고 void를 써주는 것은 아니다.
생성자의 조건
1. 생성자 이름은 클래스와 같아야 한다.
2. 생성자는 리턴값이 없다.
Ex6_11.java
class Data_1 {
int value;
}
class Data_2{
int value;
Data_2(int x) { //매개변수가 있는 생성자
value=x;
}
}
class Ex6_11 {
public static void main(String[] args) {
Data_1 d1 = new Data_1();
Data_2 d2 = new Data_2();
}
}
위 코드 실행하면 오류가 발생한다.
Data_2() 생성자는 매개변수가 있는 상태다. 기본 생성자가 빠졌기 때문에 오류가 난 것이다.
기본생성자 Data_2(){}를 만들어주거나 Data_2 d2 = new Data_2(10); 매개변수 값을 넣어주면 오류가 해결된다.
클래스에 생성자를 정의하지 않으면 컴파일러가 '기본 생성자'를 제공했기 때문에 만들어주지 않아도 됐다. 인스턴스를 생성할 때, 컴파일러가 기본 생성자를 제공한다는 사실을 기억해야 한다.
반응형
'Java' 카테고리의 다른 글
세뱃돈 계산기를 만들어보자. ①요구사항 확인 (0) | 2023.09.30 |
---|---|
[Java] 스트림(stream)이란 무엇인가? (0) | 2023.09.13 |
[Java] Calendar 클래스, getInstance() 메서드 (0) | 2023.07.11 |
[java] 컬렉션 프레임웍 - List, Set, Map (3) | 2023.06.11 |
Object 클래스의 메서드 - equals(), hashCode() (2) | 2023.06.07 |