차례:
정의-캡슐화 란 무엇입니까?
C #의 맥락에서 캡슐화는 사용자에게 필요하지 않은 데이터와 동작을 숨길 수있는 개체의 기능을 나타냅니다. 캡슐화를 사용하면 속성, 메서드 및 기타 멤버 그룹을 단일 단위 또는 개체로 간주 할 수 있습니다.
다음은 캡슐화의 이점입니다.
- 실수로 인한 손상으로부터 데이터 보호
- 클래스 외부의 코드에 대한 클래스 멤버 각각의 액세스 가능성 지정
- 코드의 유연성과 확장 성 및 복잡성 감소
- 객체 간의 결합이 적어 코드 유지 관리 성이 향상됩니다.
캡슐화는 주어진 클래스의 사용자가 디자이너가 의도하지 않은 방식으로 객체를 조작하지 못하도록 클래스 멤버에 대한 액세스를 제한하는 데 사용됩니다. 캡슐화는 시스템의 전반적인 기능에 영향을 미치지 않으면 서 클래스의 기능의 내부 구현을 숨기는 반면 클래스는 기능 요구를 처리하고 변화하는 요구 사항에 맞게 내부 구조 (데이터 또는 메서드)를 추가 또는 수정할 수 있습니다.
캡슐화는 정보 숨기기라고도합니다.
Techopedia는 캡슐화를 설명합니다
C #의 캡슐화는 다음 액세스 수정자를 사용하여 지정할 수있는 개체 데이터에 대한 서로 다른 수준의 액세스로 구현됩니다.
- 공개 : 프로그램의 모든 코드에 액세스
- 개인 : 같은 클래스의 회원에게만 액세스
- 보호됨 : 동일한 클래스 및 파생 클래스의 멤버에 대한 액세스
- 내부 : 현재 어셈블리에 액세스
- 내부 보호 : 클래스를 포함하여 파생 된 현재 어셈블리 및 유형에 액세스
캡슐화는 해당 오브젝트의 세부 사항을 저장하는 Employee 오브젝트의 예제로 설명 할 수 있습니다. 캡슐화를 사용하여 Employee 개체는 개체를 사용하는 데 필요한 데이터 (예 : Name, EmployeeID 등) 및 메서드 (예 : GetSalary)를 노출 할 수 있으며 관련이없는 필드와 메서드는 다른 개체에서 숨길 수 있습니다. 급여 정보를 제한하면서 모든 사용자가 직원에 대한 기본 정보에 액세스 할 수있는 상황을 쉽게 확인할 수 있습니다.
C #을 사용하면 접근 자 (데이터 가져 오기)와 변경자 (데이터 수정)를 사용하여 데이터를 캡슐화 할 수 있으므로 개인 데이터를 공개하지 않고 간접적으로 조작 할 수 있습니다. 속성은 개인 데이터가 C # 개체에 캡슐화되어 읽기 전용 모드 나 읽기 / 쓰기 모드로 액세스되는 대체 메커니즘입니다. 접근 자와 변경자와 달리 속성은 개체의 "set"및 "get"값에 대한 단일 액세스 지점을 제공합니다.
