안녕하세요. <div><br></div> <div>c#을 배우고있는데요.</div> <div>원래는 자바를 했어요.</div> <div><br></div> <div>자바에서는</div> <div><br></div> <div><br></div> <div>private int hp;</div> <div><br></div> <div>public int getHp(){</div> <div> return this.hp;</div> <div>}</div> <div>public void setHp(int _hp){</div> <div> this.hp = _hp;</div> <div>}</div> <div><br></div> <div><br></div> <div>이런식으로 getset을 만들어서 썻어요.</div> <div><br></div> <div><br></div> <div><br></div> <div>그런데 c#에서는</div> <div><br></div> <div><br></div> <div>private int _hp;</div> <div>public int hp {</div> <div> get {</div> <div> <span style="font-size:9pt;line-height:1.5;"> </span><span style="font-size:9pt;line-height:1.5;"> return this._hp;</span></div> <div> }</div> <div> set {</div> <div> <span style="font-size:9pt;line-height:1.5;"> </span><span style="font-size:9pt;line-height:1.5;"> this._hp = value;</span></div> <div> }</div> <div>}</div> <div><br></div> <div><br></div> <div>이렇게 하는 것 같더라고요.</div> <div><br></div> <div><br></div> <div><br></div> <div><br></div> <div>그런데 제가 알고있기로</div> <div><br></div> <div>get set 으로 묶는 이유는 외부에서 함부로 수정하는것을 방지하거나 추가적인 코드가 들어갈 필요가 있기때문에,</div> <div>선행해서 만들어두는 것으로 알고있는데요.</div> <div><br></div> <div><br></div> <div>c#에서는 변수 자체를 위의 메서드 형태로 만들수가있으니,</div> <div>굳이 필요하기 전까지는 getset형태로 만들 필요가 없지않나요?</div> <div><br></div> <div><br></div> <div>그냥</div> <div><br></div> <div><br></div> <div>public int hp;</div> <div><br></div> <div><br></div> <div>이렇게 쓰다가.</div> <div>나중에 필요해지면</div> <div><br></div> <div><br></div> <div><br></div> <div><div><br></div> <div>private int _hp;</div> <div>public int hp {</div> <div> get {</div> <div> <span style="font-size:9pt;line-height:1.5;"> </span><span style="font-size:9pt;line-height:1.5;"> return this._hp;</span></div> <div> }</div> <div> set {</div> <div> <span style="font-size:9pt;line-height:1.5;"> </span><span style="font-size:9pt;line-height:1.5;"> this._hp = value;</span></div> <div> }</div> <div>}</div></div> <div><br></div> <div><br></div> <div>이렇게 바꾸면되는게 아닌가해서요.</div> <div><br></div> <div><br></div> <div><br></div> <div><br></div> <div>아닌가요??</div>
댓글 분란 또는 분쟁 때문에 전체 댓글이 블라인드 처리되었습니다.