생성자에서 변수를 인스턴스화하는 이유와 속성을 사용하여 변수에 액세스하는 이유

마이크 스미스

몇 가지 기본적인 질문이 있습니다. 코드에서 아래와 같은 많은 것을 볼 수 있습니다.

public class User
{
    private IList<Person> _person;
    public User()
    {
        _person = new IList<Person>();
    }

    public IList<Person> personList 
    {
        get { return _person; }
        (protected) set { _person = value; }
    }
}
  1. ctor에서 변수를 인스턴스화하는 이점은 무엇입니까? 선언 할 때 인스턴스화하지 않는 이유는 무엇입니까? 어쨌든 인스턴스를 만들 때 변수를 인스턴스화하고 있으므로 선언 중에 설정하지 않는 이유는 무엇입니까?

  2. 변수를 private으로 설정 한 다음 공용 속성이 액세스하도록 허용하는 이유는 무엇입니까? (필자는 protected를 대괄호로 묶었 고, 이것의 장점을 볼 수 있습니다-하위 클래스 또는 그 자체 만 해당 속성을 설정할 수 있음),하지만 protected 또는 private 집합이 없다고 가정합니다. 변수를 공개로 설정하면 더 좋지 않을까요?

유발 이츠 차 코프

ctor에서 변수를 인스턴스화하는 이점은 무엇입니까? 선언 할 때 인스턴스화하지 않는 이유는 무엇입니까? 어쨌든 인스턴스를 만들 때 변수를 인스턴스화하고 있으므로 선언 중에 설정하지 않는 이유는 무엇입니까?

동일합니다. 클래스 수준 변수를 선언하고 동일한 줄에서 인스턴스화하면 생성자 (일반 또는 정적)에 인라인됩니다.

이에 대한 자세한 내용 은 생성자 또는 선언에서 클래스 필드 초기화 를 참조하십시오 .

변수를 private으로 설정 한 다음 공용 속성이 액세스하도록 허용하는 이유는 무엇입니까? (필자는 protected를 대괄호로 묶었 고, 이것의 장점을 볼 수 있습니다-하위 클래스 또는 그 자체 만 해당 속성을 설정할 수 있음),하지만 protected 또는 private 집합이 없다고 가정합니다. 변수를 공개로 설정하면 더 좋지 않을까요?

메서드 호출로 변환되는 속성을 사용하면 변수를 설정하기 전에 더 많은 작업을 수행 할 수 있습니다. 이에 대한 간단한 예는 입력 값이 예상 한 값인지 확인하는 것입니다.

더 많은 차이점은 공용 필드와 자동 속성을 참조하십시오.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

생성자에서 변수를 인스턴스화하는 이유와 속성을 사용하여 변수에 액세스하는 이유

분류에서Dev

생성자가 변수를 인스턴스화하지 않는 이유는 무엇입니까?

분류에서Dev

밑줄이 포함 된 변수를 사용하여 개체 속성에 액세스하는 방법

분류에서Dev

Javascript에서 참조 유형의 인스턴스 변수를 생성자에 넣어야하는 이유는 무엇입니까?

분류에서Dev

COM에서 매개 변수가있는 생성자를 사용하여 클래스 인스턴스화

분류에서Dev

선언을 사용하여 생성 된 생성자가 기본 클래스와 동일한 액세스 수준을 갖는 이유는 무엇입니까?

분류에서Dev

자식 클래스의 생성자를 사용하여 부모 클래스 개체를 인스턴스화 할 수있는 이유는 무엇입니까?

분류에서Dev

C #에서 공용 인스턴스 변수 대신 모든 속성을 사용하는 것이 바람직한 이유는 무엇입니까?

분류에서Dev

Scala에서 공변 유형 매개 변수 및 개인 생성자를 사용하는 클래스

분류에서Dev

기본 생성자를 사용하여 런타임에 유형 매개 변수화 된 클래스 인스턴스화

분류에서Dev

Xamarin Studio에서 GUI 디자이너가 생성 한 필드의 액세스 수준을 변경하는 방법

분류에서Dev

파이썬에서 다른 인스턴스의 메서드를 사용하여 한 인스턴스의 속성을 변경하는 방법

분류에서Dev

변수 값을 입력하는 대신이 인스턴스에서 변수를 사용해야하는 이유는 무엇입니까?

분류에서Dev

소유자 클래스 외부에서만 액세스 할 수있는 set 접근자를 사용하여 속성을 만드는 방법

분류에서Dev

'GET'메소드로 Express 'Router ()를 사용하여 내 매개 변수에 액세스 할 수없는 이유

분류에서Dev

Raku 클래스를 인스턴스화하고 생성자에서 인스턴스 변수를 업데이트합니다.

분류에서Dev

컨테이너 인스턴스를 사용하여 Azure에서 활성화되지 않은 Swagger 액세스

분류에서Dev

변수 이름을 사용하여 $ _POST에 액세스

분류에서Dev

변수를 사용하여 클래스 속성에 액세스

분류에서Dev

Java가 수퍼 클래스의 생성자에 액세스 할 수없는 서브 클래스를 허용하지 않는 이유는 무엇입니까?

분류에서Dev

$ this를 사용하여 존재하지 않는 변수를 인스턴스화 할 수있는 이유

분류에서Dev

클래스의 인스턴스를 생성자 내의 속성에 전달하고 해당 속성이 초기화 된 속성에 액세스하도록하는 방법은 무엇입니까?

분류에서Dev

인스턴스화를 사용하여 플레이어 위치 옆에 개체를 생성하는 방법

분류에서Dev

속성 이름이 포함 된 변수를 사용하여 자바 스크립트의 개체에서 속성을 선택하는 방법

분류에서Dev

변수를 사용하여 버튼 이름에 액세스

분류에서Dev

R 데이터 프레임에서 조건에 새로 생성 된 변수를 사용하여 다른 변수를 생성 할 수없는 이유

분류에서Dev

형태가없는 변수를 사용하여 케이스 클래스 필드에 액세스하는 방법

분류에서Dev

gcc와 clang이 함수 템플릿의 인스턴스화를 위해 다른 기호 이름을 생성하는 이유는 무엇입니까?

분류에서Dev

변수를 사용하여 자바 스크립트 개체의 함수 속성에 액세스하는 방법

Related 관련 기사

  1. 1

    생성자에서 변수를 인스턴스화하는 이유와 속성을 사용하여 변수에 액세스하는 이유

  2. 2

    생성자가 변수를 인스턴스화하지 않는 이유는 무엇입니까?

  3. 3

    밑줄이 포함 된 변수를 사용하여 개체 속성에 액세스하는 방법

  4. 4

    Javascript에서 참조 유형의 인스턴스 변수를 생성자에 넣어야하는 이유는 무엇입니까?

  5. 5

    COM에서 매개 변수가있는 생성자를 사용하여 클래스 인스턴스화

  6. 6

    선언을 사용하여 생성 된 생성자가 기본 클래스와 동일한 액세스 수준을 갖는 이유는 무엇입니까?

  7. 7

    자식 클래스의 생성자를 사용하여 부모 클래스 개체를 인스턴스화 할 수있는 이유는 무엇입니까?

  8. 8

    C #에서 공용 인스턴스 변수 대신 모든 속성을 사용하는 것이 바람직한 이유는 무엇입니까?

  9. 9

    Scala에서 공변 유형 매개 변수 및 개인 생성자를 사용하는 클래스

  10. 10

    기본 생성자를 사용하여 런타임에 유형 매개 변수화 된 클래스 인스턴스화

  11. 11

    Xamarin Studio에서 GUI 디자이너가 생성 한 필드의 액세스 수준을 변경하는 방법

  12. 12

    파이썬에서 다른 인스턴스의 메서드를 사용하여 한 인스턴스의 속성을 변경하는 방법

  13. 13

    변수 값을 입력하는 대신이 인스턴스에서 변수를 사용해야하는 이유는 무엇입니까?

  14. 14

    소유자 클래스 외부에서만 액세스 할 수있는 set 접근자를 사용하여 속성을 만드는 방법

  15. 15

    'GET'메소드로 Express 'Router ()를 사용하여 내 매개 변수에 액세스 할 수없는 이유

  16. 16

    Raku 클래스를 인스턴스화하고 생성자에서 인스턴스 변수를 업데이트합니다.

  17. 17

    컨테이너 인스턴스를 사용하여 Azure에서 활성화되지 않은 Swagger 액세스

  18. 18

    변수 이름을 사용하여 $ _POST에 액세스

  19. 19

    변수를 사용하여 클래스 속성에 액세스

  20. 20

    Java가 수퍼 클래스의 생성자에 액세스 할 수없는 서브 클래스를 허용하지 않는 이유는 무엇입니까?

  21. 21

    $ this를 사용하여 존재하지 않는 변수를 인스턴스화 할 수있는 이유

  22. 22

    클래스의 인스턴스를 생성자 내의 속성에 전달하고 해당 속성이 초기화 된 속성에 액세스하도록하는 방법은 무엇입니까?

  23. 23

    인스턴스화를 사용하여 플레이어 위치 옆에 개체를 생성하는 방법

  24. 24

    속성 이름이 포함 된 변수를 사용하여 자바 스크립트의 개체에서 속성을 선택하는 방법

  25. 25

    변수를 사용하여 버튼 이름에 액세스

  26. 26

    R 데이터 프레임에서 조건에 새로 생성 된 변수를 사용하여 다른 변수를 생성 할 수없는 이유

  27. 27

    형태가없는 변수를 사용하여 케이스 클래스 필드에 액세스하는 방법

  28. 28

    gcc와 clang이 함수 템플릿의 인스턴스화를 위해 다른 기호 이름을 생성하는 이유는 무엇입니까?

  29. 29

    변수를 사용하여 자바 스크립트 개체의 함수 속성에 액세스하는 방법

뜨겁다태그

보관