(생성자 복습하기)
https://codebunny99.tistory.com/125
자바의 생성자(Constructor)와 접근 제어자(Access)
생성자( Constructor ) 란 - 생성자는 클래스의 인스턴스를 생성할 때 호출되는 특별한 메서드- 클래스 이름과 동일한 이름을 가지며 반환 타입이 없다. (1) public class MemberMain { public static void main(S
codebunny99.tistory.com
생성자를 만들면, // 3번과 같이 코딩을 효율적으로 할 수 있다.
// 1번
Member m1 = new Member();
m1.name = "홍길동";
m1.tel = "010-1111-2222";
m1.address = "인천 서구";
// 2번
Member m2 = new Member();
m2.setMember("김나나", "010-3333-3333" , "인천 서구 청라");
// 3번
Member m3 = new Member("아이유", "010-5555-5555" , "인천 서구 가좌동");
디폴트 생성자를 만들어주고, this를 사용하여 생성자 함수에 직접 파라미터를 넣으면
// 3번과 같이 함수안에 파라미터를 바로 입력하는 간결한 코딩을 할 수 있었다.
Super 함수 이용하는 이유와 방법
복습한 경우에는, 상속을 이용하지 않았기 때문에 상속의 개념과 덧붙여서 생성자를 사용하는 방법을 알아보려고 한다.
부모의 클래스에서는 위의 방식으로 똑같이 생성자를 만들어주면 된다.
자녀의 클래스 또한 위의 방식으로 똑같이 생성자를 만들어줄 수 있다. 그러나,
자녀의 생성자는 부모의 생성자를 상속받으면 더욱 효율적인 코딩을 할 수 있다.
메인에서 생성자로 출력하고자 하는 입력문은 다음과 같다.
부모의 생성자를 이용한 코딩이다. age 부분은 마이너스로 나오면 안되므로 유효성 검사를 한 것이다.
super함수를 이용하지 않을 시에, 자녀 클래스에서는 this.를 통해 출력할 수도 있지만, 코드가 너무 길다.
이를 짧게 코딩하기 위해서는 super() 함수를 사용해서, 부모의 생성자를 그대로 상속받아 사용할 수 있다.
출력 결과이다.
'Java' 카테고리의 다른 글
자바의 추상화(Abstract)의 용도와 방법 (0) | 2024.06.03 |
---|---|
자바 메소드 오버라이딩(Method Overriding) 하는 방법 (2) | 2024.06.03 |
자바의 상속자에 대해 학습하기 (0) | 2024.06.03 |
자바의 Getters와 Setters 사용하는 이유와 방법 알아보기 (0) | 2024.05.31 |
자바의 생성자(Constructor)와 접근 제어자(Access) (0) | 2024.05.31 |