생성자(constructor)

  • 인스턴스를 초기화 할 때의 명령어 집합 new
  • 생성자의 이름은 그 클래스의 이름과 같음
  • 메소드가 아님. 상속되지 않으며, 리턴 값은 없음

디폴트 생성자(Default Constructor)

  • 하나의 클래스에는 반드시 하나 이상의 Constructor가 존재
  • 프로그래머가 생성자를 기술하지않으면 Default Constructor가 자동생성(컴파일러가 코드에 넣어 줌)
  • Default Constructor는 매개 변수 , 구현부가 없음

생성자 오버로드(Constructor overload)

  • 필요에 의해 생성자 추가 하는 경우 여러개의 생성자가 하나의 클래스에 있을 수 있음.

참조 자료형(reference data type)

private

  • public:전부사용가능 , private:class내부만 가능 , 없음:같은패키지내에서만 가능

this

  • 생성된 인스턴스 스스로를 가리키는 예약어
  • 생성자에서 다른 생성자를 호출
public Person(){
	//this앞에 아무것도 쓸수없다.(객체가 생성되기 전이라)
	this("이름없음",34);
}
    
public Person(String name, int age){
	this.name=name;
	this.age=age;}

static 클래스 변수, 정적변수

  • 인스턴스가 생성될 때 마다 다른 메모리를 가지는 것이 아니라 프로그램이 메모리에 적재(load) 될때 데이터 영역의 메모리에 생성 됨
  • 인스턴스 생성과 관계없이 클래스 이름으로 직접 참조 함
  • static 메서드
    • 클래스 메서드
    • 메서드에 static 키워드를 사용하여 구현
    • 주로 static 변수를 위한 기능 제공
    • static 메서드에서 인스턴스 변수를 사용할 수 없음
      (인스턴스 변수는 인스턴스가 먼저 생성되어야 하므로 static 메서드에서는 생성이 불확실한 인스턴스 변수를 사용할 수 없다.)
    • 인스턴스 생성과 관계 없이 클래스 이름으로 직접 메서드 호출
profile
개발 블로그

0개의 댓글