새소식

Java/제대로 파는 자바

[제대로 파는 자바 (Java)-by 얄코] 클래스 기초

  • -

해당 게시물은 [제대로 파는 자바 (Java) - by 얄코]를 수강한 내용을 바탕으로 작성하였습니다.

 

 

 

 

클래스 class : 각 버튼이 갖고 있을 속성(들)과 기능(들)을 정의

  • 객체 object / 인스턴스 instance : 속성(프로퍼티)들과 기능(메소드)들의 묶음
    • 자바에서는 객체와 인스턴스를 같은 것으로 이해해도 됨
  • 인스턴스는 클래스에서 정의한 방식으로 양산됨

 

 

 

 

클래스 & 인스턴스 - 프랜차이즈 본사 & 매장

  • ⭐ 클래스파일의 이름은 클래스의 이름과 동일해야 함 (public 클래스일 시)
    • IntelliJ에서 클래스명 수정해 볼 것 - refactor
    • 디버깅 툴로 인스턴스들 살펴볼 것
    • out 디렉토리 살펴볼 것 - 클래스들이 .class 파일로 생성

 

 

 

 

⭐️ 생성자 메소드 - 매장을 내는 메소드

//  ⭐ 생성자(constructor) : 인스턴스를 만드는 메소드
//  ⭐ this : 생성될 인스턴스를 가리킴
YalcoChicken (int no, String name) {
    this.no = no;
    this.name = name;
}
  • 메서드 이름 없이, 반환 타입(해당 클래스) 뒤로 괄호가 따라옴
  • return을 명시하지 않음 - 해당 클래스 타입의 인스턴스 반환
  • new 연산자와 함께 사용되어 인스턴스를 반환
YalcoChicken store1 = new YalcoChicken(3, "판교");

 

  • 필수 작성 아님 - 언제나 같은 내용의 인스턴스를 반환할 경우
    • 작성되지 않았을 경우에는 인자 없이 호출 (이전 예제 확인)
    • ⭐️ 코드에 작성하지 않아도 컴파일러가 자동 생성
      • .class 파일에서 확인 가능

 

  • 자동생성
    • 메뉴 - 코드 - 생성
      • 윈도우: alt + insert
      • 맥: command + N
    • 생성자 선택
    • name 과 price 선택

 

  • 💡 생성자를 작성하지 않는다고 생성자가 없는 것이 아님
    • ex02 의 컴파일된 파일 YalcoChicken.class 살펴 볼 것

따로 작성한적 없지만 비어있는 생성자 존재

 

 

 

 

⭐️ this - 만들어질 인스턴스를 가리킴

  • intro 메소드 브레이크포인트에서 this 항목 확인
    • no 와 name 에 this 를 붙인 것과 같음

store1이 this를 가리킴

  • 메소드 내에서 같은 이름의 변수나 인자가 없다면 식별자는 this 의 필드를 가리킴
  • 같은 이름의 변수나 인자가 있다면 덮어씌워짐
    • 필드에는 this를 붙여 구분
    • 생성자에서 this 를 빼고 실행해 볼 것

값이 들어가지 않았음

  • intro 에서 주석 해제해 볼 것, this 를 사용하여 다시 해 볼 것

이름이 모두 몽고반이 되어버림

 

this 사용

 

 

Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.