c\#패 키 징 과 접근 수정자 깊이 분석

패 키 징 은'하나 이상 의 항목 을 물리 적 이거 나 논리 적 인 가방 에 닫 는 것'으로 정의 된다.대상 을 대상 으로 하 는 프로 그래 밍 방법론 에서 패 키 징 은 세부 적 인 접근 을 방지 하기 위 한 것 이다.
추상 과 패 키 징 은 대상 프로그램 디자인 과 관련 된 특성 이다.추상 은 관련 정 보 를 시각 화 할 수 있 고 패 키 징 은 개발 자 로 하여 금 필요 한 단계 의 추상 을 실현 하 게 한다.
C\#패 키 징 은 구체 적 인 수요 에 따라 사용자 의 접근 권한 을 설정 하고 액세스 수식 자 를 통 해 이 루어 집 니 다.
접근 수식 자 는 클래스 구성원 의 범위 와 가시 성 을 정의 합 니 다.C\#지원 하 는 접근 수식 자 는 다음 과 같 습 니 다.
  • public:모든 대상 이 방문 할 수 있 습 니 다
  • private:대상 자체 가 대상 내부 에서 방문 할 수 있 습 니 다
  • 4.567917.protected:이러한 대상 과 그 하위 대상 만 방문 할 수 있 습 니 다
  • internal:같은 프로그램 집합 대상 에 접근 할 수 있 습 니 다
  • proctected internal:현재 프로그램 집합 이나 파생 클래스 의 유형 에 한 정 됩 니 다.
  • 퍼 블 릭 액세스 수정자
    Public 접근 수식 자 는 구성원 변수 와 구성원 함 수 를 다른 함수 와 대상 에 노출 시 킬 수 있 습 니 다.모든 공유 구성원 은 외부 클래스 에 접근 할 수 있다.
    아래 의 실례 는 이 점 을 설명 한다.
    
    using System;
    
    namespace RectangleApplication
    {
      class Rectangle
      {
        //    
        public double length;
        public double width;
    
        public double GetArea()
        {
          return length * width;
        }
        public void Display()
        {
          Console.WriteLine("  : {0}", length);
          Console.WriteLine("  : {0}", width);
          Console.WriteLine("  : {0}", GetArea());
        }
      }// Rectangle   
    
      class ExecuteRectangle
      {
        static void Main(string[] args)
        {
          Rectangle r = new Rectangle();
          r.length = 4.5;
          r.width = 3.5;
          r.Display();
          Console.ReadLine();
        }
      }
    }
    위의 코드 가 컴 파일 되 고 실 행 될 때 다음 과 같은 결 과 를 얻 을 수 있 습 니 다.
    길이
    너비
    면적:15.75
    위의 인 스 턴 스 에서 구성원 변수 length 와 width 는 Public 로 밝 혀 졌 기 때문에 함수 Main()에서 Rectangle 류 의 인 스 턴 스 r 를 사용 하여 접근 할 수 있 습 니 다.
    구성원 함수 Display()와 GetArea()는 이 변 수 를 직접 방문 할 수 있 습 니 다.
    멤버 함수 Display()도 Public 로 밝 혀 졌 기 때문에 Main()에서 Rectangle 류 의 인 스 턴 스 r 로 접근 할 수 있 습 니 다.
    개인 접근 수정자
    Private 접근 수식 자 는 구성원 변수 와 구성원 함 수 를 다른 함수 와 대상 에 숨 길 수 있 도록 합 니 다.같은 클래스 의 함수 만 이 개인 구성원 에 게 접근 할 수 있 습 니 다.클래스 의 인 스 턴 스 라 도 개인 구성원 에 게 접근 할 수 없습니다.
    아래 의 실례 는 이 점 을 설명 한다.
    
    using System;
    
    namespace RectangleApplication
    {
      class Rectangle
      {
        //    
        private double length;
        private double width;
    
        public void Acceptdetails()
        {
          Console.WriteLine("     :");
          length = Convert.ToDouble(Console.ReadLine());
          Console.WriteLine("     :");
          width = Convert.ToDouble(Console.ReadLine());
        }
        public double GetArea()
        {
          return length * width;
        }
        public void Display()
        {
          Console.WriteLine("  : {0}", length);
          Console.WriteLine("  : {0}", width);
          Console.WriteLine("  : {0}", GetArea());
        }
      }//end class Rectangle  
      class ExecuteRectangle
      {
        static void Main(string[] args)
        {
          Rectangle r = new Rectangle();
          r.Acceptdetails();
          r.Display();
          Console.ReadLine();
        }
      }
    }
    위의 코드 가 컴 파일 되 고 실 행 될 때 다음 과 같은 결 과 를 얻 을 수 있 습 니 다.
    길이 입력:
    4.4
    너비 입력:
    3.3
    길이:4.4
    너비:3.3
    면적:14.52
    위의 인 스 턴 스 에서 구성원 변수 length 와 width 는 private 로 밝 혀 졌 기 때문에 함수 Main()에 접근 할 수 없습니다.
    구성원 함수 AcceptDetails()와 Display()는 이 변수 에 접근 할 수 있 습 니 다.
    멤버 함수 AcceptDetails()와 Display()가 Public 로 밝 혀 졌 기 때문에 Main()에서 Rectangle 류 의 인 스 턴 스 r 를 사용 하여 접근 할 수 있 습 니 다.
    보 호 된 접근 수정자
    Protected 접근 수식 자 는 하위 클래스 가 기본 클래스 의 구성원 변수 와 구성원 함수 에 접근 할 수 있 도록 합 니 다.이렇게 하면 상속 실현 에 도움 이 된다.우 리 는 계승 장 에서 이것 을 상세 하 게 토론 할 것 이다.이것 에 대해 더 자세히 토론 하 다.
    내부 접근 수정자
    내부 접근 설명 자 는 구성원 변수 와 구성원 함 수 를 현재 프로그램의 다른 함수 와 대상 에 노출 시 킬 수 있 습 니 다.내부 액세스 수정자 가 있 는 모든 구성원 은 이 구성원 이 정의 하 는 프로그램 에 있 는 모든 종류 나 방법 으로 접근 할 수 있다 는 것 이다.
    아래 의 실례 는 이 점 을 설명 한다.
    
    using System;
    
    namespace RectangleApplication
    {
      class Rectangle
      {
        //    
        internal double length;
        internal double width;
        
        double GetArea()
        {
          return length * width;
        }
        public void Display()
        {
          Console.WriteLine("  : {0}", length);
          Console.WriteLine("  : {0}", width);
          Console.WriteLine("  : {0}", GetArea());
        }
      }//end class Rectangle  
      class ExecuteRectangle
      {
        static void Main(string[] args)
        {
          Rectangle r = new Rectangle();
          r.length = 4.5;
          r.width = 3.5;
          r.Display();
          Console.ReadLine();
        }
      }
    }
    위의 코드 가 컴 파일 되 고 실 행 될 때 다음 과 같은 결 과 를 얻 을 수 있 습 니 다.
    길이
    너비
    면적:15.75
    위의 인 스 턴 스 에 서 는 구성원 함수 GetArea()가 설명 할 때 접근 수정자 가 없 음 을 주의 하 십시오.접근 수정자 가 지정 되 지 않 으 면 클래스 구성원 의 기본 접근 수정자,즉 private 를 사용 합 니 다.
    보 호 된 내부 접근 수정자
    Protected Internal 접근 수식 자 는 이 클래스,파생 클래스 또는 이 클래스 를 포함 하 는 프로그램 에 집중 적 으로 접근 할 수 있 습 니 다.이것 도 상속 실현 에 쓰 인 다.
    이상 은 c\#패 키 징 과 방문 수정자 에 대한 상세 한 내용 을 깊이 분석 하 는 것 입 니 다.c\#패 키 징 과 방문 수정자 에 관 한 자 료 는 우리 의 다른 관련 글 을 주목 하 세 요!

    좋은 웹페이지 즐겨찾기