본문 바로가기
  • soobinhand의 기술 블로그
Computer Science/JAVA

[JAVA] 생성자

by soobinhand 2021. 10. 16.
728x90

생성자 (Constructor)

생성자는 인스턴스가 생성될 때 호출되는 '인스턴스 초기화 메서드'입니다. 

인스턴스 변수의 초기화 작업에 주로 사용됩니다.

 

구조도 메서드랑 비슷하긴 한데, 리턴값이 없습니다.

 

사실 모든 클래스에는 반드시 하나 이상의 생성자가 있어야합니다.

근데 지금까지 우리가 그냥 코딩할 수 있었던 이유는 바로 default(기본) 생성자 덕분입니다.

 

생성자가 없으면 기본 생성자가 있는 것으로 판단합니다. (굳이 쓰지 않아도)

하지만 기본 생성자가 아닌 생성자가 있다면 기본 생성자는 없는 것으로 판단합니다.

그래서 아래 예시처럼 기본 생성자를 따로 써줘야 합니다.

public class A{
	A(){}
}

이런 식으로 말이죠.

그래서 사실 개발자들은 보통 기본 생성자(위) 처럼 써놓고 있습니다. 생성자를 쓰건 말건 상관 없이 말이죠.

 

조건

1. 생성자의 이름 = 클래스의 이름

2. 생성자는 리턴 값이 없음.

 

상속과 관련된 생성자

만약 child 클래스에서 parent 클래스한테 상속을 받으려면, parent 클래스한테 기본 생성자가 있어야합니다.

다른 말로하면 생성자가 하나도 없다면 그냥 상속을 받을 수 있습니다.

 

하지만 parent 클래스가 매개변수 있는 생성자를 하나라도 갖고 있고 기본 생성자를 따로 적어주지 않았다면 

상속을 받지만 빨간줄이 뜨게 됩니다.

이 빨간줄이 없어지려면 parent 생성자 형식만 맞춰서 child 생성자 안에다가 적어주면 됩니다.

예를 들어, 자식 생성자 갯수가 100개라면 그 안에 super(100) 을 100개 써주면 됩니다.(단 맨 윗줄에)

public class child extends parent{
	public child(){
    		super(10,10);
    }
}

 

위의 예시처럼 사용하면 됩니다.

 

728x90

'Computer Science > JAVA' 카테고리의 다른 글

[JAVA] StringTokenizer  (0) 2021.11.14
[JAVA] Priority Queue  (0) 2021.10.30
[JAVA] JDBC  (0) 2021.10.29
[JAVA] format 함수  (0) 2021.10.24
[JAVA] toBinaryString 함수  (0) 2021.10.24

댓글