본문 바로가기
Language/Java

자바 생성자란 무엇인가?

by wakestand 2019. 10. 13.
반응형

생성자 이러면 감이 안오는데

영어로 Constructor라고 써도 역시 감이 안온다

 

한자 시간과 영어 시간에 너무 잠을 많이 잤기 때문이리라

 

생성자는 객체화 시 초기화 해주는 역할을 담당하는데

객체에 뭔가 값을 넣어주거나 할 때 사용한다는 말이다

 

생성자는

1. 클래스명과 메소드명이 동일해야 하고

2. 리턴 타입이 없어야 한다

 

이 두 규칙을 지켜서 만들어주면 되는데

예를 들어 객체에 특정 값을 넣어주고 싶을 경우

 

위 스크린샷처럼 파라미터를 받아서

생성자에 넣어주면

 

나중에 객체명.생성자에서_만든_변수 를 통해 사용할 수 있다

 

생성자의 개념을 이해하기 전에

객체화, this의 개념을 좀 알아둘 필요가 있는데

아래 글을 참조해주면 된다 

 

자바 객체화(인스턴스화) 알아보기

위 스크린샷을 보면 ObjectTest 클래스 영역에 정의한 i를 출력하려고 해도 에러가 뜨면서 출력이 되지 않는 것이 보이는데 i로 선언한게 없는데 i 값을 어떻게 가져옴? 이런 에러가 뜨는 것이다 클래스는 메소드..

wakestand.tistory.com

 

자바 this, super 차이 알아보기

자바의 this부터 먼저 알아보자면 왼쪽 스크린샷에서 클래스 영역의 변수 value는 10으로 주고 ThisSuperTest 를 객체화하면서 파라미터에는 1을 넣어 줬는데 생성자에서 이 1을 value로 받아 사용하기에 실제 va..

wakestand.tistory.com

마지막으로 테스트에 사용한 코드는 아래와 같다

 

public class ConstructorTest {
	
	String value;
	
	public ConstructorTest(String value) { // 객체화 시 가장 먼저 사용됨
		this.value = value;
	}

	public static void main(String[] args) {
		ConstructorTest ct = new ConstructorTest("mon"); // 객체화
		ConstructorTest ct2 = new ConstructorTest("tue"); // 객체화
		System.out.println(ct.value);
		System.out.println(ct2.value);
	}

}
반응형

댓글