백엔드 개발 C#.Net 튜토리얼 C#의 5개 액세스 한정자의 범위 예에 대한 자세한 설명

C#의 5개 액세스 한정자의 범위 예에 대한 자세한 설명

Jun 29, 2017 pm 02:36 PM
.net private protected

C# 언어에는 공개, 비공개, 보호, 내부, 보호 내부의 5가지 액세스 한정자가 있습니다. 범위의 범위는 다음과 같습니다.
액세스 한정자 설명
public 공개 액세스입니다. 어떤 제한도 없이.
비공개 액세스. 액세스는 서브클래스나 인스턴스가 아닌 이 클래스의 멤버로 제한됩니다.
보호된 보호된 액세스. 액세스는 이 클래스와 하위 클래스로 제한되며 인스턴스에는 액세스할 수 없습니다.
내부 내부 접근. 이 프로젝트에 대한 액세스는 제한되어 있으며 다른 사람은 액세스할 수 없습니다.
내부 보호 내부 보호 접근. 액세스는 이 프로젝트 또는 하위 클래스로 제한되며 다른 사람이 액세스할 수 없습니다. C# 멤버 유형의 수정 가능 및 기본 수정자는 다음과 같습니다.
멤버 유형 기본 수정자는
enum public none
class private public, protected, Internal로 수정할 수 있습니다. , private,
protected inside
interface public none
struct private public, inside, private
이제 예시를 바탕으로 public, private, protected, Internal, protected Internal의 범위에 대해 이야기하겠습니다.
다음 코드:

[csharp] view plain copy
 
using System;  
using System.Collections.Generic;  
using System.Text;  
  
namespace AccessModifier  
{  
    public class AccessModifierClass  
    {  
        public string GetPublicString()  
         {  
            return "Public String";  
         }  
  
        protected string GetProtectedString()  
         {  
            return "Protected String";  
         }  
  
         private string GetPrivateString()  
         {  
            return "Private String";  
         }  
  
         internal string GetInternalString()  
         {  
            return "Internal String";  
         }  
  
        protected internal string GetProtectedInternalString()  
         {  
            return "Protected Internal String";  
         }  
  
        void AvailableAccessModifier()  
        {  
         this.GetPublicString();  
         this.GetPrivateString();  
         this.GetInternalString();  
         this.GetProtectedInternalString();  
         this.GetProtectedString();  
        }  
     }  
  
  
    public class TestAccessModifierClass1  
     {  
         void AvailableAccessModifier()  
         {  
             AccessModifierClass item = new AccessModifierClass();  
             item.GetPublicString();  
             item.GetInternalString();  
             item.GetProtectedInternalString();  
         }  
     }  
  
     public class TestAccessModifierClass2 : AccessModifierClass  
     {  
         void AvailableAccessModifier()  
         {  
             AccessModifierClass item = new AccessModifierClass();  
             item.GetPublicString();  
             item.GetInternalString();  
             item.GetProtectedInternalString();  
             base.GetProtectedString();  
         }  
     }  
 }
로그인 후 복사

AccessModifierClass는 5개의 액세스 수정자 메서드가 있는 액세스 수정자 클래스입니다. AccessModifierClass 클래스의 AvailableAccessModifier() 메서드는 모든 메서드에 액세스할 수 있음을 알 수 있습니다.
TestAccessModifierClass1 클래스의 AvailableAccessModifier() 메서드는 공용, 내부 및 보호된 내부 메서드에만 액세스할 수 있습니다.

TestAccessModifierClass2 클래스는 AccessModifierClass 클래스에서 상속되므로 해당 AvailableAccessModifier() 메서드는 공용, 내부, 보호 및 보호된 내부 메서드에 액세스할 수 있습니다.

위 내용은 C#의 5개 액세스 한정자의 범위 예에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

C#의 취업 전망은 어떻습니까? C#의 취업 전망은 어떻습니까? Oct 19, 2023 am 11:02 AM

초보자이든 숙련된 전문가이든 C#을 마스터하면 경력을 쌓는 길이 열릴 것입니다.

여러 .NET 오픈 소스 AI 및 LLM 관련 프로젝트 프레임워크 공유 여러 .NET 오픈 소스 AI 및 LLM 관련 프로젝트 프레임워크 공유 May 06, 2024 pm 04:43 PM

오늘날 인공지능(AI) 기술 개발은 본격화되고 있으며, 다양한 분야에서 큰 잠재력과 영향력을 보여주고 있습니다. 오늘 Dayao는 여러분에게 몇 가지 참고 자료를 제공하고자 4개의 .NET 오픈 소스 AI 모델 LLM 관련 프로젝트 프레임워크를 공유할 것입니다. https://github.com/YSGStudyHards/DotNetGuide/blob/main/docs/DotNet/DotNetProjectPicks.mdSemanticKernelSemanticKernel은 OpenAI, Azure와 같은 대규모 언어 모델(LLM)을 통합하도록 설계된 오픈 소스 소프트웨어 개발 키트(SDK)입니다.

Java에서 개인은 무엇을 의미합니까? Java에서 개인은 무엇을 의미합니까? Nov 24, 2022 pm 06:27 PM

Java에서 private은 "private"을 의미하며 클래스, 속성 및 메서드를 수정하는 데 사용되는 액세스 제어 수정자입니다. private으로 수정된 클래스 멤버는 클래스 자체의 메서드로만 액세스하고 수정할 수 있으며 다른 클래스(클래스의 하위 클래스 포함)에서는 액세스하고 참조할 수 없습니다. 따라서 private 수정자는 최고 수준의 보호를 갖습니다.

개발자를 위한 .NET 성능 최적화 기술 개발자를 위한 .NET 성능 최적화 기술 Sep 12, 2023 am 10:43 AM

.NET 개발자라면 고품질 소프트웨어 제공에 있어 기능과 성능 최적화의 중요성을 인식해야 합니다. 제공된 리소스를 전문적으로 활용하고 웹 사이트 로드 시간을 줄임으로써 사용자에게 즐거운 경험을 선사할 뿐만 아니라 인프라 비용도 절감할 수 있습니다.

Java 함수의 개인 액세스 수정자에 대한 자세한 설명 Java 함수의 개인 액세스 수정자에 대한 자세한 설명 Apr 25, 2024 pm 04:48 PM

Private은 함수가 정의된 클래스로만 함수의 접근성을 제한하는 Java 액세스 한정자입니다. 다음을 포함하여 함수는 다른 클래스에서 액세스할 수 없습니다. 이 함수는 하위 클래스에서도 액세스할 수 없습니다.

Java 프레임워크와 .NET 프레임워크 간의 성능 차이 Java 프레임워크와 .NET 프레임워크 간의 성능 차이 Jun 03, 2024 am 09:19 AM

높은 동시성 요청 처리 측면에서 .NETASP.NETCoreWebAPI는 JavaSpringMVC보다 성능이 뛰어납니다. 그 이유는 다음과 같습니다. 시작 시간을 줄여주는 AOT 조기 컴파일, 개발자가 개체 메모리 할당 및 해제를 담당하는 경우.

Java에서는 최상위 클래스를 보호 또는 비공개로 선언할 수 있나요? Java에서는 최상위 클래스를 보호 또는 비공개로 선언할 수 있나요? Sep 12, 2023 pm 07:21 PM

아니요, 최상위 클래스를 비공개 또는 보호로 선언할 수 없습니다. 공개 또는 기본값(수정자 없음)일 수 있습니다. 수정자가 없으면 기본 액세스가 있어야 합니다. 구문 //Atoplevelclass publicclassTopLevelClassTest{ //Classbody} 최상위 클래스가 private으로 선언되면 컴파일러는 "여기에서는 private 수정자가 허용되지 않습니다."라는 오류를 보고합니다. 이는 최상위 클래스가 비공개일 수 없으며 보호된 액세스에도 동일하게 적용됨을 의미합니다.

C# .NET 인터뷰 질문 및 답변 : 전문 지식 레벨 업 C# .NET 인터뷰 질문 및 답변 : 전문 지식 레벨 업 Apr 07, 2025 am 12:01 AM

C#.NET 인터뷰 질문 및 답변에는 기본 지식, 핵심 개념 및 고급 사용이 포함됩니다. 1) 기본 지식 : C#은 Microsoft가 개발 한 객체 지향 언어이며 주로 .NET 프레임 워크에 사용됩니다. 2) 핵심 개념 : 위임 및 이벤트는 동적 바인딩 방법을 허용하고 LINQ는 강력한 쿼리 기능을 제공합니다. 3) 고급 사용 : 비동기 프로그래밍은 응답 성을 향상시키고 표현 트리는 동적 코드 구성에 사용됩니다.

See all articles