생성자는 기본적으로 필드 초기값을 설정하는 용도로 사용한다.

그리고 생성자는 다음과 같은 특징을 갖는다.

1. 생성자명은 클래스명과 같아야 한다.

2. 리턴 값을 정의하지 않는다.

3. 객체가 생성될 때 호출된다.

아래는 생성자 사용의 예시이다.

설명은 주석처리 해놓았다.

public class CircleTest {

	public static void main(String[] args) {
		Point p = new Point(25, 78);
		Circle c = new Circle(p, 10);  // c라는 객체(이름이 c인 원(Circle))를 생성하면서 생성자를 통해
		System.out.println(c);         // 중심점(p), 반지름(10)을 전달하여 필드값을 초기화해주고 있다.
	}
}

class Point{
	private int x, y;
	
	public Point(int a, int b) {
		x=a;
		y=b;
	}

	@Override
	public String toString() {
		return "Point [x=" + x + ", y=" + y + "]";
	}
}

class Circle{
	private int radius;
	private Point center;
	
	public Circle(Point p, int r) { //p와 r을 받아 해당 객체의 필드값을 초기화 해준다.
		center = p;
		radius = r;
	}
	
	@Override
	public String toString() {
		return "Circle [radius=" + radius + ", center=" + center + "]";
	}

객체 하나하나는 고유의 특성을 갖는다 예를 들면 어떤 사람의 이름, 나이, 키, 몸무게 등 그 객체가 갖는 특정 값들을 생성자를 통해 편리하게 초기화 할 수 있다는 면에서 유용하다.

반응형

'JAVA > 개념' 카테고리의 다른 글

[자바] 다형성  (1) 2021.03.31
[자바] set함수, get함수  (0) 2021.03.30

+ Recent posts