ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 클래스 정리
    게임 개발 학원/C# 2024. 3. 5. 15:58
    반응형

    필드 : 클래스 안에서 선언된 변수

    속성은 필드, 속성의 행동은 메서드

    인스턴스 : class를 가지고 실체 객체를 생성산 결과물

     

    static 필드 : 

    static으로 선언된 필드는 static이라는 메모리 영역에 저장되어 프로그램이 종료될때까지 메모리 상에 남아있음
    몇개의 인스턴스를 생성하든 클래스 당 하나의 값을 가짐
    static을 사용하는 이유는 인스턴스 간의 값을 공유하기 위해서 

     

    class

     

    main

     

     

    -> 출력결과, 

    count가 전역적으로 값이 유지x, static을 사용해야함 

     

     

     

    class에서 public int count; -> public static int count;로 변경 후

     

     

     

     

     

     

     

     

    공용사용은 static으로 변경

     

     

     

     

     

    --------------------------------------------------------------------------------------------------------------------------------------------------------

     

    <getter, setter>
        - 멤버 변수가 외부 객체와 상호작용하는 경우 get, set 함수를 구현해주는것이 일반적
        ㄴ get/set 함수의 접근제한자를 설정해서 외부에서 멤버변수의 접근을 캡슐화

     

    this는 내 자신을 가리킴 
    2번은 set을 하는데 다양한 조건이나 연산이 가능하다, set 함수와 동일 매개변수는 value라고 생각

    ( set 에서 새로운 값을 지정할때 value라는 키워드, 매개변수처럼 사용, value 위치에 새로 지정한값이 위치)

     

    get/set을 단순히 읽고 쓰는 용도로 사용한다면 3번이 적합
    set안에 조건이 붙거나 어떤 연산이 이루어지는 거라면 1번이나 2번이 적합

     

    ----------------------------------------------------------------------------------------------------------------------------------------------------

    정보 은닉 원칙

    특별한 이유를 제외하고는 필드를 절대적으로 public으로 선언x

    접근이 필요할때는 접근자/ 설정자 메서드를 만들어서 외부에서 접근하는 경로를 만들기

     

    메소드 오버라이드 : 필요에 의해서 부모한테 물려받아서 재정의

    상속받은 클래스에서 부모클래스의 메서드를 호출 가능 

     

    private : 내부에서만 접근을 허용, 개인
    public : 내부, 파생클래스(자식클래스), 외부에서도 접근을 허용
    portected : 내부, 그리고 내 자식에게만 접근을 허용, 상속관계 
    상속을 쓰는 이유 : 같은 기능이 있다면 , 부모한테 다 주고 확장성 용이

    반응형

    '게임 개발 학원 > C#' 카테고리의 다른 글

    객체지향 4대특징 & SOLID  (0) 2024.03.06
    Abstract, virtual, override, interface  (0) 2024.03.06
    foreach문, var  (0) 2024.03.04
    C#형변환  (0) 2024.03.04
    데이터 타입, 박싱 & 언박싱  (0) 2024.03.04
Designed by Tistory.