디자인 모델 학습 노트 2: 대상 지향 기초 2
public class Cat
{
// , private, 3
private int shoutnum = 3;
//ShoutNum , public,
//get shoutnum
//set shoutnum
public int ShoutNum
{
get { return shoutnum; }
set { shoutnum = value; }
}
}
위 코드 의 private 와 Public 는 모두 수정자 입 니 다.Public 는 수식 하 는 클래스 구성원 들 이 다른 모든 종류의 방문 을 허용 할 수 있다 고 밝 혔 다.private 는 같은 클래스 의 구성원 만 방문 할 수 있 으 며, 다른 클래스 는 그의 하위 클래스 를 포함 하여 접근 할 수 없 으 며, 속명 은 개인 적 인 것 이 라 고 밝 혔 다.클래스 의 구성원 이 수정자 가 없 으 면 기본 값 은 private 입 니 다.보통 필드 는 private 이 고 속성 은 Public 입 니 다.일반적으로 속성 이름 의 이니셜 은 대문자 이 고 필드 는 이니셜 소문 자 나 앞 에 '' 을 추가 합 니 다. 속성 은 get 과 set 두 가지 방법 이 있 습 니 다.get 접근 기 는 성명 의 속성 과 같은 데이터 형식 을 되 돌려 줍 니 다. 호출 은 내부 필드 의 값 이나 인용 을 얻 을 수 있다 는 뜻 입 니 다.set 접근 기 는 파 라 메 터 를 설정 하지 않 았 습 니 다. 키워드 value 로 표시 합 니 다. 그의 역할 은 속성 을 호출 하여 내부 필드 나 할당 을 참조 할 수 있 습 니 다.포장 하 다 패 키 징 은 대상 을 대상 으로 하 는 세 가지 특성 중 하나 이다.모든 대상 은 그 가 조작 할 수 있 는 데 필요 한 모든 정 보 를 포함 하고 있 으 며, 이 특성 은 패키지 가 되 어 있 으 며, 대상 은 다른 대상 에 의존 하여 자신의 조작 을 완성 할 필요 가 없 기 때문이다. 포장 의 장점: 좋 은 포장 은 결합 을 감소 시 킬 수 있다.클래스 내부 의 실현 은 자 유 롭 게 수정 할 수 있다.클래스 는 뚜렷 한 대외 인 터 페 이 스 를 가지 고 있다.이어받다 대상 을 향 한 두 번 째 특징 은 계승 이다.대상 의 상속 은 일종 의 'is - a' 의 관 계 를 대표 하 는데 만약 에 두 대상 의 A 와 B 가 'B 는 A' 라 고 묘사 할 수 있다 면 B 는 A 를 계승 할 수 있다 는 것 을 나타 낸다.고양 이 는 포유동물 로 고양이 와 포유동물 간 의 계승 과 계승 관 계 를 설명 한다.상속 자 는 피 상속 자의 특성 외 에 도 자신 만 의 개성 을 갖 추고 있 기 때문에 피 상속 자의 특수화 로 이해 할 수 있다.계승 은 클래스 가 어떻게 서로 관련 되 고 특성 을 공유 하 는 지 정의 합 니 다.계승 하 는 작업 방식 은 부류 와 자 류 를 정의 하거나 기류 와 파생 류 라 고 하 는데 그 중에서 자 류 는 부류 의 모든 특성 을 계승 하 는 것 이다.자 류 는 부류 의 모든 특성 을 계승 할 뿐만 아니 라 새로운 특성 도 정의 할 수 있다. 만약 에 자 류 가 아버지 류 에 계승 된다 면 첫째, 자 류 는 아버지 류 가 private 가 아 닌 속성 과 기능 을 가진다.둘째, 자 류 는 자신의 속성 과 기능 을 가진다. 즉, 자 류 는 부모 류 에 없 는 속성 과 기능 을 확장 할 수 있다.셋째, 자 류 는 자신의 방식 으로 부류 의 기능 (방법 재 작성) 을 실현 할 수 있다. protected 는 상속 시 하위 클래스 가 기본 클래스 에 대해 완전한 접근 권 을 가 질 수 있 음 을 나타 낸다.즉, proctected 수식 클래스 의 구성원 은 하위 클래스 에 대해 공개 하지만 다른 클래스 에 대해 서 는 공개 하지 않 는 다 는 것 이다.자 류 는 부 류 를 계승 하면 기 류 는 부 류 를 제외 한 속성 과 기능 을 가진다. 동물 기류:
public class Animal
{
protected string name = "";
public Animal(string name)
{
this.name = name;
}
public Animal()
{
this.name = " ";
}
protected int shoutNum = 3;
public int ShoutNum
{
get { return shoutNum; }
set { shoutNum = value; }
}
}
고양이 종류:
public class Cat : Animal
{
public Cat()
: base()
{ }
public Cat(string name)
: base(name)
{ }
public string Shout()
{
string result = "";
for (int i = 0; i < shoutNum; i++)
{
result = result + " ,";
}
return " " + name + " " + result;
}
}
개 종류:
public class Dog : Animal
{
public Dog()
: base()
{ }
public Dog(string name)
: base(name)
{ }
public string Shout()
{
string result = "";
for (int i = 0; i < shoutNum; i++)
{
result = result + " ,";
}
return " " + name + " " + result;
}
}
하위 클래스 가 그의 부모 클래스 에서 계승 하 는 구성원 은 방법, 도 메 인, 속성, 사건, 색인 표시 기 가 있 지만 구조 방법 에 대해 서 는 계승 되 지 못 하고 호출 될 수 밖 에 없다.부모 클래스 를 호출 하 는 구성원 에 대해 서 는 base 키 워드 를 사용 할 수 있 습 니 다. 계승 의 장점 은 모든 하위 클래스 의 공공 부분 을 부모 클래스 에 두 고 코드 를 공유 하 는 것 이다. 그러면 중복 을 피 할 수 있다. 또한 계승 은 수정 과 확장 을 통 해 계승 을 실현 하 는 것 이 비교적 쉽다. 계승의 단점 은 아버지 가 변 하면 자 류 는 변 할 수 밖 에 없다 는 것 이다.계승 은 포장 을 파괴 하고 부 류 는 세부 적 인 부분 을 하위 클래스 에 노출 시킨다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
디자인 모델 의 공장 모델, 단일 모델자바 는 23 가지 디자인 모델 (프로 그래 밍 사상/프로 그래 밍 방식) 이 있 습 니 다. 공장 모드 하나의 공장 류 를 만들어 같은 인 터 페 이 스 를 실현 한 일부 종 류 를 인 스 턴 스 로 만 드 는 것...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.