TIL

[221025] 클래스와 객체1

hatch 2022. 10. 25. 18:03
728x90
반응형

Do it! 자바 프로그래밍 입문, 클래스와 객체1 (1)~(3)

함수와 메서드

메서드(method)

  • 함수 중에서 객체 기능 제공을 위해 클래스 내부에 구현되는 함수.
    • (작성 Tip.) 해당 메서드를 사용하는 입장에서 이름을 적는다.

함수(funtion)

  • 하나의 기능을 수행하는 일련의 코드.
    • 사용하는 메모리 : 스택.
    • 함수 호출이 끝나면 스택에서 자동으로 사라짐.
    함수의 유용성?
    • 하나의 이름에 하나의 기능만 구현.
    • 필요한 기능별로 구분해두면 사용하기에 효율적이다.

인스턴스(instance)

클래스와 인스턴스

  • 클래스 -(생성) -> 인스턴스
  • 생성 방법 : new 예약어 이용.
  • 형태 ( 클래스 변수 명 = new 생성자; )

인스턴스와 힙(Heap) 메모리

  • 하나의 클래스로부터 여러 개의 인스턴스 생성.
  • 사용 메모리 : 힙(Heap).
  • 각각의 인스턴스는 다른 메모리에 다른 값을 가짐(다른 주소 값).
  • 자동 삭제 아님. 그러나 자바의 경우, 안쓰는 변수 garbage collector에서 수거해감.

생성자(constructor)

default 생성자

  • 자바는 자동 생성.
  • 매개 변수 등 아무 것도 없음.
  • 사용자 정의 생성자 만들면 당연히 사라짐.
  • default 생성자도 필요할 경우?
    사용자 정의 생성자와 함께 default 생성자도 작성해 줌(생성자 오버로드).

생성자가 하는 일?

  • 인스턴스 초기화. 처음 객체 생성하며 해야하는 일 적어둠.

특징

  • 생성자 이름은 클래스 이름과 동일함.
  • 메소드가 아니라 상속되지 않고 리턴 값도 없음.

기본 문법

<modifiers> ([<argument_list>]) {[statements]}