c \ # 들 어가 기

3285 단어 c#
이번 주 프로젝트 가 점차 완공 되 어 중대 한 문 제 를 발견 하지 못 했 습 니 다. 그래서 계속. net 의 실험 을 하고 있 습 니 다.. net 프레임 워 크 는 대부분 c \ # 로 작 성 된 것 입 니 다. 수업 시간 에 도 자세히 들 어 보 았 습 니 다. c \ # 에 대해 잘 알 고 있 습 니 다. 전에 배 운 자바 에 비해 c \ # 다른 특성 이 있 는 것 같 습 니 다. (자바 도 있 을 수 있 지만 저 는 잘 모 릅 니 다) 여기 서 정리 해 보 겠 습 니 다.(본 고 는 개인의 이해 일 뿐 잘못 이 있 으 면 지적 하고 용서 하 기 를 바 랍 니 다. 초학 일 뿐 입 니 다)
1. 속성 과 필드
이전에 나 는 속성 과 필드 가 같은 뜻 이 라 고 생각 했 지만 사실은 그렇지 않 았 다. 필드 는 보통 클래스 에서 정 의 된 클래스 구성원 변수 이 고 속성 은 필드 에 대한 패 키 징 으로 외부 에 접근 할 수 있다. 이것 은 자바 에서 getXX (), setXX () 의 방법 과 같다. 예 를 들 어:
//java 
class Person {
    Stringname;//   (   )
    
    public void setName(String name) {    //name    
        this.name = name;
    }
    
    public String getName() {            //name    
        return this.name;
    }
}

c \ # 속성 표기 법 은 type. js 와 유사 합 니 다:
class Person{
    string name;
    
    public string Name{
        get{
            return name;
        }
        set{
            name = value;
        }
    }
}

이 속성의 정 의 는 다음 과 같 습 니 다. [수정자] 형식 설명자 Name, 바로 위의 세 번 째 줄 입 니 다. 이때 name 은 필드 입 니 다. Name 은 속성 입 니 다. 이 속성 은 공유 로 직접 가 져 올 수 있 지만 가 져 오기 와 할당 은 우리 의 제어 에 있 습 니 다. get 이나 set 를 제거 하고 읽 기 전용 또는 설정 만 할 수 있 습 니 다.
2. 다 형
c \ # 에서 다 중 재 작성 부모 클래스 를 실현 하 는 방법 은 가상 방법 만 다시 쓸 수 있 고 키워드 virtual 에 사용 해 야 합 니 다. 예 를 들 어:
class Program
    {
        static void Main(string[] args)
        {
            Father father = new Child();
            father.sayName();
        }
    }

    class Father
    {
        public void sayName()
        {
            Console.WriteLine("fathler");
        }
    }

    class Child : Father
    {
        public void sayName()
        {
            Console.WriteLine("child");
        }
    }

부모 클래스 와 하위 클래스 를 정의 합 니 다. 입구 함수 Main 에서 부모 클래스 에 새 하위 클래스 를 할당 합 니 다. 다 중 의미 에 따라 자바 에 서 는 child 를 직접 출력 할 것 입 니 다. 그러나 c \ # 에 서 는 father 를 직접 출력 합 니 다. 이 유 는 부모 클래스 를 덮어 쓰 는 방법 입 니 다. 부모 클래스 방법 은 virtual 로 수식 해 야 합 니 다. 하위 클래스 방법 은 override 로 수식 해 야 합 니 다. 자바 에 서 는 기본 적 인 모든 방법 이 허 방 입 니 다.법, 그래서 자바 는 child 를 직접 출력 합 니 다.
 class Program
    {
        static void Main(string[] args)
        {
            Father father = new Child();
            father.sayName();
        }
    }

    class Father
    {
        public virtual void sayName()
        {
            Console.WriteLine("fathler");
        }
    }

    class Child : Father
    {
        public override void sayName()
        {
            Console.WriteLine("child");
        }
    }

그 러 고 보 니 c + + 도 virtual 이라는 키 워드 를 만 나 서 다 중 계승 문 제 를 해 결 했 지만 그 때 는 잘 몰 랐 습 니 다. 역시 사용 해 봐 야 이해 할 수 있 었 습 니 다.
3. 구조 체
구조 체 는 클래스 와 유사 합 니 다. 클래스 는 더미 에 놓 여 있 습 니 다. 구조 체 는 스 택 에 놓 여 있 습 니 다. 장점 은 빠 르 고 단점 은 전체 적 으로 인용 할 수 없다 는 것 입 니 다. / / 쓰기 와 클래스 는 유사 합 니 다. class 를 struct 로 바 꾸 어도 계승 가능 한 인터페이스 입 니 다.
public struct {
    string title;
    public string  gettitle() {
        return title;
    }
}

총결산
저 는 c \ # c + + 의 개선 판 처럼 더욱 대상 을 대상 으로 하 는 동시에 자바, js 등 다른 언어의 특징 을 융합 시 켰 습 니 다. 지금 은 여러 가지 언어 가 비슷 한 부분 이 많은 것 같 습 니 다. 모두 가 서로 참고 하여 학습 하고 융합 시 켜 점점 강해 지고 언어학 을 잘 배 우 는 동시에 다른 스트레스 도 이렇게 크 지 않 습 니 다. 처음에 c 언어 를 배우 지 않 았 습 니 다.힘 들 어?

좋은 웹페이지 즐겨찾기