일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 웹개발기초
- CSS
- jsp
- SpringFramework
- microservices
- Java
- two pointers
- coding test
- msa개념
- html
- jvm메모리구조
- Bambino
- C
- 밤비노
- MSA
- mysql
- MVC
- DB
- 웹개발
- 안드로이드
- 코드잇
- Programming
- BCIT
- 웹개발자
- 리액트프로젝트
- 데이터베이스
- servlet
- job
- sql
- 자바
- Today
- Total
초보 개발자의 기록
매개변수가 있는 생성자(constructor) 본문
매개변수가 있는 생성자(constructor)
- 생성자도 메서드처럼 매개변수를 선언하여 호출 시 값을 넘겨받아 인스턴스의 초기화 작업에 사용가능
- 인스턴스마다 각기 다른 값으로 초기화되어야하는 경우가 많기 떄문에 매개변수를 사용한 초기화는 매우 유용
생성자에서 다른 생성자 호출
- 같은 클래스의 멤버들 간에 서로 호출할 수 있는 것처럼 생성자 간에도 서로 호출이 가능
조건 1. 생성자의 이름으로 클래스이름 대신 this를 사용
2. 한 생성자에서 다른 생성자를 호출할 떄는 반드시 첫 줄에서만 호출이 가능
- 생성자에서 다른 생성자를 첫 줄에서만 호출이 가능하도록 한 이유는
생성자 내에서 초기화 작업도중에 다른 생성자를 호출하게 되면,
호출된 다른 생성자 내에서도 멤버변수들의 값을 초기화를 할 것이므로,
다른 생성자를 호출하기 이전의 초기화 작업이 무의미해질 수 있기 떄문.
- 같은 클래스 내의 생성자들은 일반적으로 서로 관계가 깊은 경우가 많아,
서로 호출하도록해 유기적으로 연결해주면 더 좋은 코드를 얻을 수 있음
- 수정이 필요한 경우에도 보다 적은 코드만을 변경하면 되므로, 유지보수가 쉬워짐
- 생성자의 캐개변수로 인스턴스변수들의 초기값을 제공받는 경우가 많기 떄문에
매개변수와 인스턴스의 변수 이름이 일치하는 경우가 多.
이때 this를 사용해 구변되도록하는 것이 명확하고 이해하기 쉬움
- this는 참조변수로 자기자신을 가리킴. this를 사용할 수 있는 것은 인스턴스멤버 뿐
'JAVA > Basic' 카테고리의 다른 글
JVM 메모리 구조 (0) | 2021.08.02 |
---|---|
변수의 타입 (0) | 2021.08.02 |
import문 (0) | 2021.08.01 |
패키지 (package) (0) | 2021.08.01 |
생성자 (Constructor) (0) | 2021.08.01 |