반응형
생성자 이러면 감이 안오는데
영어로 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);
}
}
반응형
'Language > Java' 카테고리의 다른 글
자바 초기화는 무슨 뜻이고 왜 해야할까? (2) | 2019.10.17 |
---|---|
자바 extends, implements 차이점 알아보기 (0) | 2019.10.14 |
자바 필드, 멤버 변수, 전역 변수는 같은 말? (0) | 2019.10.13 |
자바 클래스, 객체, 인스턴스 구분하기 (0) | 2019.10.12 |
자바 객체화(인스턴스화) 알아보기 (3) | 2019.10.12 |
댓글