네이버 클라우드 캠프/Java

[Java] 인스턴스화

graph-dev 2023. 3. 23. 17:30
728x90

"인스턴스화란 무엇인가?"

  • 설계도에 대한 부품을 만들어주는 작업입니다.
  • new + 생성자 형태로 만들 수 있습니다.
  • 생성자도 메소드 중 하나이며, 메소드 오버로딩을 통해 다양한 생성자를 정의할 수 있습니다.
  • 생성자의 명칭은 클래스명과 동일해야 하고, 이를 제외한 메소드는 클래스명과 달라야 합니다. 같으면 에러가 발생합니다.
  • 또한, 생성자는 기본생성자와 매개변수가 있는 생성자로 나누어집니다.

 

1. 기본생성자

Bird bird = new Bird();
  • 매개변수가 없는 생성자가 기본생성자이고, 따로 정의하지 않아도 바로 사용할 수 있습니다.

 

2. 매개변수가 있는 생성자

public 클래스명(타입 매개변수1, 타입 매개변수2, ...) {
	//매개변수로 멤버변수를 초기화
}
  • 생성자는 객체를 만들고 멤버변수를 초기화합니다.
  • 매개변수의 개수 ≤ 멤버변수의 최대 개수
  • new 키워드와 함께 매개변수를 함께 정의해서 사용해야 합니다.
Life c = new Life("지금", "여기");
  • 주의사항
    • 매개변수가 있는 생성자를 정의할 때는 반드시 기본 생성자를 정의해야 사용할 수 있습니다.
    • 기본 생성자는 필수 요소라 생각하고, 다른 매개변수가 있는 생성자를 추가할 수 있습니다.

3. 상속

  • extends 키워드를 사용합니다.
  • 부모클래스에 있는 속성과 기능을 자식클래스에 물려준다(상속)고 생각하면 됩니다.
public 자식클래스 extends 부모클래스{
		자식의 속성, 자식의 기능
}

 

* 상속, 오버로딩, 오버라이딩 개념은 난이도가 있어 따로 정리하겠습니다.

'네이버 클라우드 캠프 > Java' 카테고리의 다른 글

[Java] enum 열거형 정리  (0) 2023.03.29
[Java] Collections  (0) 2023.03.29
[Java] 클래스와 상속  (0) 2023.03.20
[Java] Unhandled exception type IOException  (0) 2023.03.13
[Java] 기초  (0) 2023.03.13