📌 생성자(constructor)
- 객체가 생성될 때 객체의 초기화를 위해 실행되는 메서드이다.
- 객체가 생성되는 순간에 자동으로 호출된다.
public class Circle{
public int radius;
public String name;
public Circle(){}
public Circle(int r, String n){
radius = r;
name = n;
}
public double getArea(){
return 3.14*radius*radius;
}
}
🌈 기본 생성자
- 매개변수와 실행 코드가 없어 아무 일도 하지 않고 단순 리턴하는 생성자
- 생성자는 반드시 하나 이상 있어야 하므로 생성자를 지정하지 않으면 기본 생성자가 자동으로 생성된다.
🌈 생성자의 특징
- 생성자의 이름은 클래스와 동일하다.
- 생성자는 여러 개 작성(오버로딩)할 수 있다.
- 생성자는 new를 통해 객체를 생성할 때 딱 한번만 호출된다.
- 생성자에 리턴 타입을 지정할 수 없다.
- 생성자의 목적은 객체가 생성될 때, 필요한 초기 작업을 위함이다.
📌 상속과 생성자
- 서브 클래스 객체가 생성될 때 슈퍼 클래스의 생성자 → 서브 클래스의 생성자 순으로 실행된다.
- 기본적으로 슈퍼 클래스의 생성자는 기본 생성자가 선택되지만, super()을 통해 슈퍼 클래스의 생성자를 선택할 수 있다.
class A{
public A(){}
public A(int x){}
}
class B extends A{
public B(){}
public B(int x){
super(x);
}
}