[section 1] Java 객체지향 프로그래밍 기초(2) - 생성자, 내부 클래스

수경·2022년 11월 4일
0

코드스테이츠

목록 보기
13/57
post-thumbnail

생성자

클래스의 객체를 생성할 때, 인스턴스의 초기화를 위해 호출되는 특수 메소드
❗️인스턴스 생성 ➡️ new 키워드

  • 생성자를 선언하지 않으면 컴파일러가 자동으로 기본 생성자를 생성

  • 생성자 ∈ 메소드 ➡️ 오버로딩 가능

선언
1. 클래스와 이름이 같아야 함
2. 리턴 타입 없음, void 문 선언 ❌

this

인스턴스 자신을 가리킴 ➡️ 자신의 변수 접근!

주로 인스턴스 변수와 매개변수를 구분하기 힘들 때 사용

this( )

자신이 속한 클래스의 다른 생성자를 호출

조건
1. 생성자 내부에서만 사용
2. 생성자의 첫 줄에 위치해야 함

예시

class People {
	String name;
    int height;
    
    // 기본 생성자
    public People() {
    	this("null", 0);
    };
    
    // 매개변수가 한 개인 생성자
    public People(String name) {
    	// this()로 자신이 속한 클래스의 다른 생성자 호출
    	this(name, 0);
    };
    
    // 매개변수가 두 개인 생성자
    public People(String name, int height) {
    	// this로 인스턴스 자신에 접근
        // 인스턴스의 변수에 매개로 받은 값 저장
    	this.name = name;
        this.height = height;
    }; 
}

내부 클래스

클래스 안에 정의되는 클래스

내부 클래스와 서로 연관되어 있을 때 사용

특징

  1. 외부 클래스 멤버에 쉽게 접근
  2. 코드의 복잡성을 줄임
  3. 외부적으로 불필요한 데이터를 감춤 ➡️ 캡슐화!

종류

1. 인스턴스 내부 클래스

  • 외부 클래스의 모든 접근 지정자의 멤버에 접근 가능
  • 외부 클래스에 의존
  • 객체 생성 후 사용

2. 정적 내부 클래스

  • 인스턴스 없이 접근 가능 ➡️ 외부 클래스에 의존 ❌

3. 지역 내부 클래스

  • 클래스의 메소드 내에 정의
  • 객체 생성 후 사용

4. 익명 내부 클래스

예시

class Outer {
	// 인스턴스 내부 클래스
	class Inner () { };
    
    // 정적 내부 클래스
    static class Inner () { };
    
    // 지역 내부 클래스
    void study () {
    	Class LocalInner() { };
    }
}

회고

자바..... 미쳤냐.....

말 장난이 너무 심해서 이 말이 저 말 같고 이게 저거같고
그래서 뭐가 어쨌다는 지 알기 너무 힘들다
오히려 코드 읽고 이해하는 게 더 쉬운 수준..........

자바는 역시.. 오래 공부하고 붙잡고 있지 않는 이상 매번 새롭다........

대학 2학년 때부터 지금까지 벌써 자바 이론만 4번째 훑는 중인데 알면서도 헷갈린다............. 이젠 진짜 알 때도 됐잖아...🥺 .....

하아아아

오늘도 '생성자? ㅇㅋ 쉽지~' 하면서 공부하는데 이너클래스....진심을 담아 정색..😐 .... 진심 헷갈림

나는 왜 생성자보다 이너클래스가 더 어렵지???? ㅠㅠ .... 엄청나게 헷갈림
일단 왜 써야하는지 제대로 파악이 안 됨
외부 클래스 멤버의 접근제어자가 private 일때 내부 클래스에서 접근이 가능하다 정도?,,, 내가 어떻게 코드에 써먹어야 할지 감이 안 옴

뿌엥 그 잡채


오늘 체크 포인트에서 엔지니어님이 블로그 작성에 대해 이런 조언을 주셨다.
(드디어 뭐라고 불러야 되는 지 알아냄! 엔지니어님!!!🥹)

😇 여러분 ~~ 저희는 전문 엔지니어가 아니잖아요~ 우리는 누군가에게 도움을 줄 수 있는 글을 쓰자는 게 아니에요~ 그 날 배웠던 개념을 다시 떠올리고 공부하는 과정에 집중하시고 나만 알아볼 수 있게 쓰시면 돼요~~

감동받아서 울 뻔

블로그는 읽기 좋아야 한다는 강박이 있었는데, 그러지 말아야지 하면서도 마음처럼 안 됐다.
근데 그러지 않아도 된다는 말을 다른 사람(그것도 엔지니어님)의 입을 통해 들으니 마음이 편안해졌다 🥹

조아 진짜 다 내려놓고 써보자고 🔥🔥🔥🔥🔥🔥🔥🔥

profile
어쩌다보니 tmi뿐인 블로그😎

0개의 댓글