Microsoft MVP성태의 닷넷 이야기
c#문법질문입니다. [링크 복사], [링크+제목 복사]
조회: 435
글쓴 사람
kss
홈페이지
첨부 파일
 
 class Program
    {
        public object MyClass { get; } = new object();
        public object MyClass2 => new object();

        static void Main(string[] args)
        {
            Program pg = new Program();
            Console.WriteLine(pg.MyClass.Equals(pg.MyClass));
            Console.WriteLine(pg.MyClass2.Equals(pg.MyClass2));
        }
    }

콘솔에 첫번째는 true라고 찍히는데
두번째는 false라고 찍힙니다.

MyClass2가 호출될때마다 계속 힙에 객체가 생성되는것같은데
Myclass의 간편표기볍이 MyClass2아닌가요?






[최초 등록일: ]
[최종 수정일: 11/1/2019 ]


비밀번호

댓글 쓴 사람
 



2019-11-01 11시16분
(.NET Reflector 등을 이용해) 각각의 풀어진 경우를 보면 알 수 있습니다. 예상할 수 있겠지만 MyClass의 구현과,

object _prop; // 생성자에서 "_prop = new object()" 초기화
public object MyClass { get { return _prop; } }

MyClass2는 다릅니다.

public object MyClass2 { get { return new object(); } }
정성태

1  2  3  4  [5]  6  7  8  9  10  11  12  13  14  15  ...
NoWriterDateCnt.TitleFile(s)
5168익명유저5/30/2019941항상 정말 감사드립니다... [1]
5167WPF5/23/2019852질문드립니다. [1]
5165이대희5/22/2019876Visual Studio 설치 구성요소 문의 (C# 7.3 개정판 관련) [1]
5164레드5/21/2019847실행 과정과 실행파일 디버그 시 Icon변경 질문드립니다. [5]
5163이대희5/20/2019825시작하세요 C# 7.3 프로그래밍 책 도착했습니다. [1]
5162채홍윤5/14/20191141Mono Develop window 설치 [6]
5161정대영5/13/2019671VS 2013에서 C#6.0(.netFramwork 4.6.1) $ 디버깅 오류 [1]
5160초보개발자5/13/2019930wcf 관련 국내 서적 살만한 책이 있나요? [2]
5159sdh25/9/2019880VS 2010 버전에서 생성한 DLL을 VS 2017버전에서 실행 시 에러 [2]
5158sdh5/8/2019647Visual studio 2010 버전에서 생성한 Project를 Visual studio 2017버전에서 실행에러 [1]
5157김경훈5/8/2019801Task 만들때 넘겨주는 CancellationToken은 어디서 사용 되는 건가요? [4]
5156rysoo5/8/2019854yield return의 리턴 타입 질문 드립니다. [4]
5155세퉁5/7/2019789관리자 권한으로 실행 시 알림창(?) 없이 바로 실행 시킬 수 있는 방법이 있을까요?? [2]파일 다운로드1
5154SoulToMind5/4/2019578NamedPipe 질문드립니다. [2]
5153개태5/4/2019644WCF RESTful Service에서 enum을 parameter로 쓰는방법 [2]
5152세퉁5/3/2019920인터넷 시간을 불러와 pc에 적용 시키고 싶습니다. [3]파일 다운로드1
5151이대희5/3/2019788C# 7.3으로 개정판 출간 계획이 있으신가요? [1]
5150김이현5/2/2019735C# 딕셔너리 생성에 대해 질문드립니다. [1]
5149민성5/1/2019658ftp 이미지 업로드중 [1]
5148wpf질문4/30/2019642특정 사이트를 wpf에서 popup을 항상 허용하게 할려면 어떻게 해야할까요? [5]
5147민성4/30/2019669wpf에서 작업관리자를 띠울려면 어떻게 해야 하나요? [1]
5146불파겐4/25/2019688하나의 필드를 여러 스레드에서 읽어갈 때 스레드 동기화를 하지 않으면 문제가 생길까요? [2]
5145e구름4/17/20191174Properties.Setting.Default값에 대해 질문드립니다. [2]
5144성태님 사랑하는사람4/17/2019765질문하시기 전에 10000 페이지 오류 납니다. [1]
5143헌이4/16/2019789윈도우 작업표시줄에 프로그램 띄우기 [2]파일 다운로드1
5142cab2da4/9/20192068C#으로 만든 DLL 배포하기 [10]
1  2  3  4  [5]  6  7  8  9  10  11  12  13  14  15  ...