2011-11-22 3 views
0

가능한 중복 :
C#: Public Fields versus Automatic Properties왜 자동 속성입니까?

class Person 
{ 
    public Person() 
    { 
     Name = "Default Name"; 
    } 

    public string Name { get; set; } 
} 

class Person 
{ 
    public Person() 
    { 
     Name = "Default Name"; 
    } 

    public string Name; 
} 

최초의 장점은 무엇입니까?

같이 사용하면 public string Name { get; private set; }입니다. 그리고 네 - 왜 객체 지향 프로그래밍에서 속성을 사용하는지 이해합니다.

(나는 이름의 개인 인스턴스가 될 것입니다 런타임도 알 -하지만 난 큰 차이를 볼 수 없습니다 - 당신은 그냥 public string [variable] { get; set; }처럼 사용하는 경우)

+0

나는 간단한 데이터 바인딩은 얻고 싶다고 생각한다. – Nickolodeon

+0

http://www.codinghorror.com/blog/2006/08/properties-vs-public-variables.html – manojlds

+0

@manojlds : Jeff가 오늘 (게시물이 다소 오래된 것) 같은 것이라고 여전히 생각하는지 모르겠다. 생각하지만 나는 그의 지위의 대부분 부분에 동의하지 않는다. 다른 읽기 : http://csharpindepth.com/articles/chapter8/propertiesmatter.aspx – Otiel

답변

0

나는 종종 빈과 속성을 시작 { get; set; } 나중에 전체 getter/setter 메서드를 코딩하겠습니다. 그것은 내 코드의 개요를 빨리 끝내고 나중에 세부 사항을 채울 수있게 해줍니다.

또한 공용 멤버가 아닌 속성에서만 작동하는 일부 데이터 바인딩 코드를 모호하게 기억합니다. 이 경우 빈 { get; set; }은 속성을 데이터 바인딩에 노출합니다.

관련 문제