| 니앙팽이 - 객체지향(OOP) | 2-4 | 클래스의 this & 메소드 체이닝

2023. 2. 1. 17:44·CS/SW 공학
객체지향

📕 2. 객체지향 개발


📄 4. 클래스의 this

1). this 란... 🔍

  • 클래스를 이용해 구체적인 제품으로 만든 Instance를 가르키는 것
    그 인스턴스 그 자신의 참조 변수

2). 왜 쓰는건가? 🤔

Doc이나, 블로그 돌아나니면서 알아본 결과..

ⓐ 명시성 👁‍🗨 (Class 작성 관점)
Class 메소드 작성시, 매개변수와 인스턴스의 멤버변수 명시적으로 구분하기 위해 this 사용

  • ex)
    매개변수와 멤버변수의 이름이 같습니다. 
    이럴때 this 를 사용하여 구분할 수 있습니다.
    /*클래스*/
    class Foo {
      private int value;
      Foo(int value(매개변수) ){
        /*   value(멤버변수)= value(매개변수);*/?? 이런식으로 작성해도 괜찮긴한데
        this.value(멤버변수) = value(매개변수); 이렇게 해야지 매개변수랑 멤버랑 확실히 구분 가능하다.
      } 
    }
    /*인스턴스*/
    Foo fooInstance = new Foo(30);
    
  • 그래서 매개변수와 멤버변수 구별안되는일을 피하기 위해
    웬만해서 void Foo(int _매개변수) {...} 이런식으로 언더바를 작성한다.

ⓑ 체이닝 🚋 (Instance 사용 관점)
문장을 마치지 않고 메소드 호출을 이어나갈 수 있다.
가독성을 향상시킬 수 있다.

  • 인스턴스의 메소드 사용시 다음을 비교해보자
    None 체이닝 체이닝
  • 🤯 와! 한줄로 점찍어서 작성어케함?
    • this를 이용한 메소드 체이닝
저작자표시 (새창열림)

'CS > SW 공학' 카테고리의 다른 글

| 니앙팽이 - 객체지향(OOP) | 2-6 | 생성자 & 생성자 위임  (0) 2023.02.01
| 니앙팽이 - 객체지향(OOP) | 2-5 | 구조체  (0) 2023.02.01
| 니앙팽이 - 객체지향(OOP) | 2-3 | Static (클래스 멤버)  (0) 2023.02.01
| 니앙팽이 - 객체지향(OOP) | 2-2 | 접근한정자  (0) 2023.02.01
| 니앙팽이 - 객체지향(OOP) | 2-1 | Class & Instance  (0) 2023.02.01
'CS/SW 공학' 카테고리의 다른 글
  • | 니앙팽이 - 객체지향(OOP) | 2-6 | 생성자 & 생성자 위임
  • | 니앙팽이 - 객체지향(OOP) | 2-5 | 구조체
  • | 니앙팽이 - 객체지향(OOP) | 2-3 | Static (클래스 멤버)
  • | 니앙팽이 - 객체지향(OOP) | 2-2 | 접근한정자
니앙팽이
니앙팽이
  • 니앙팽이
    니앙팽이 블로그
    니앙팽이
  • 전체
    오늘
    어제
    • 분류 전체보기 (126)
      • 그림그리기 (7)
      • 음악 (4)
        • FL Studio & MIDI (2)
        • 자작곡 (2)
      • 게임 (7)
        • 모바일 (0)
        • 스팀 (0)
        • 닌텐도 (0)
        • 개발 (7)
      • CS (44)
        • SW 공학 (27)
        • DB (7)
        • OS (9)
        • 네트워크 (1)
      • 팁 (9)
      • Language (21)
        • C# (8)
        • C&C++ (3)
        • 파이썬 메모 (3)
        • Javascript (7)
      • PS (0)
        • 알고리즘 (24)
        • 자료구조 (8)
        • 수학 (1)
        • 선형대수 (0)
        • 오토마타 (1)
        • 이산수학 (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    프로세스
    Stack
    c#
    가비지 콜렉터
    알고리즘
    객체지향개발
    그림 연습
    Javascript
    파이썬
    KAKAO
    노마드 코더
    clip studio paint
    유니티
    따라그리기
    클립 스튜디오
    unity
    자료구조
    디자인패턴
    프로그래머스
    연결리스트
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
니앙팽이
| 니앙팽이 - 객체지향(OOP) | 2-4 | 클래스의 this & 메소드 체이닝
상단으로

티스토리툴바