생성자
: 객체를 생성할 때 초기화할 명령어의 집합
생성자의 역할 :
class를 instance로 만들 때 호출함.
생성자의 호출 :
일반 메서드 -> 참조 변수를 이용해 항상 호출 가능
생성자 -> new로 호출
기본 생성자(Default Constructor) :
생성자의 이름 = 클래스의 이름
생성자는 메서드가 아니며, 객체를 생성할 때만 호출함.
상속되지 않으며, 리턴 값을 가지지 않는다.
하나의 클래스에는** 하나 이상의 생성자가 존재함.
프로그래머가 생성자를 기술하지 않으면 기본 생성자가 자동으로 생김
(컴파일러가 코드에 넣어줌) - 기본 생서자는 인수 및 구현부가 없음
만약 클래스에 아규먼트가 있는 다른 생성자를 추가하면 기본 생서자는 제공되지 않음!
기본 생성자가 제공되는 경우 : 생성자가 없을 때 컴파일러가 제공!
생성자 오버로딩(Constructor overloading) :
매개변수를 달리하는 생성자를 여러 개 선언하는 것
public의 특징 : 외부 클래스에서의 생성자, 메서드의 접근을 무조건 허용
public이 없는 변수는 같은 패키지 내 접근만 허용
public이 없는 경우 접근 제어자라고 함
private 선언 : 클래스 내부에서만 사용(=외부 클래스에서 접근 불가능
) -> 정보 은닉(Informaton hiding)이 구현됨!!
getName : 값을 가져오는 메소드
setName : 값을 집어넣은 메소드
this : 객체, 자기자신
정보은닉(private)을 활용한 경우:
1. get만 제공하고 set을 제공하지 않으면 외부에서 값을 바꿀 수 없음
2. 변수에 대한 오류를 막을 수 있음
default : 아무 제한이 없는 상태