부모글 보이기/감추기 AD BLOCK 해제 요청 이 글에는 광고가 많이 들어가 있지 않습니다. adblock을 해제하셔도 글을 읽는데 그다지 부담이 없으니 해제를 부탁드립니다. 안녕하세요! C#언어를 공부하게된지 얼마 안된 코린이 입니다! 비전공자 핑계로 개념이해가 어려워서 질문드립니다. C# [생성자]를 사용해야하는 [이유]가 무엇인지 알려주시면 감사하겠습니다! 도와주십쇼ㅠㅠ [다음 글] 도와주세요!! 팝업 띄우는 더블클릭 이벤트!! 부탁드립니다 ㅠㅠ [이전 글] C# debugging 중에 Thread Pool Worker들이 사라지는데요 [최초 등록일: 10/13/2021] [최종 수정일: 10/13/2021] 비밀번호 댓글 작성자 2021-10-13 02시44분 사실 프로그램 하는데 있어 생성자가 꼭 필요한 것은 아닙니다. 달리 보면 편의상 있다고 봐도 무방합니다.예를 들어, Car라는 타입을 정의해 볼 때,class Car{}Car c = new Car();추가로 Car에 fuel이라는 속성을 정의해 보겠습니다.class Car{ public int fuel;}여기까지는 생성자가 그다지 필요하지 않습니다. 문제는, fuel이라는 값이 기본으로 50이 항상 있다고 가정할 때입니다. 그럼, 생성자가 없다면 모든 Car 인스턴스를 정의할 때마다 다음과 같이 코딩을 해야 합니다.Car c = new Car();c.fuel = 50;Car d = new Car();d.fuel = 50;그냥 봐도 좀 불편하죠? ^^; 이럴 때 생성자를 정의해 그 안에서 기본값을 설정해 둘 수 있다면,class Car{ public int fuel; public Car() { fuel = 50; }}Car c = new Car(); // 연료가 50Car d = new Car(); // 연료가 50중복 코드를 쉽게 제거할 수 있습니다. 또 다른 가정을 하나 해볼까요? fuel이 Car 인스턴스를 생성할 때 외부에서 항상 넣어줘야 하는 상황이라면 어떨까요? 이런 경우에도 생성자가 없다면 매번 다음과 같이 코딩해야 합니다.Car c = new Car();c.fuel = 54;Car d = new Car();d.fuel = 38;그런데, 생성자를 정의해 두면, class Car{ int _fuel; public Car(int fuel) { _fuel = fuel; }}이렇게 처리할 수 있습니다.Car c = new Car(54);Car d = new Car(38);혹시 그래도 이해가 안 되시면 또 질문을 해주세요. 정성태 2021-10-13 02시50분 [guest] 우와!!! 예제를 통해서 보니 한번에 이해가 되었습니다!!! 정말 정말 너무 감사드립니다!!! 열심히 공부 하겠습니다!!! 감사합니다 ㅠㅠㅠㅠ!!!! [guest] 2021-10-14 05시14분 [이정훈] 초기화 용도 (상속한 부모의 초기화 포함) [guest] 2021-10-15 10시13분 [guest] 초기화용도! 감사합니다! [guest] ... 61 62 63 64 65 66 67 68 69 70 71 [72] 73 74 75 ... NoWriterDateCnt.TitleFile(s) 756손승휘3/24/200818718Microsoft Web Browser OCX 부분이 안전하지 않는 ACTIVEX로 IE에서 인식되어는 점 [1]754단테3/19/200815827실행파일의 아이콘을 프로그램 적으로 변경할 수 있을까요? [1]753신동열3/12/200816566비스타의 권한 상승 관련 질문 있습니다. [2]751김재영3/6/200815714스레드와 비스레드간의 대기상태 순서에 대해 질문이 있습니다. [2]1752정성태3/7/200815274 [답변]: 스레드와 비스레드 간의 대기 상태 순서에 대해 질문이 있습니다. [1]750김용현3/3/200814656스마트 클라이언트로 파일 다운로드시 파일의 크기가 0인 경우가 발생합니다. [2]749임영한2/28/2008302032003서버에서 msxml3.dll 오류 "80070005" 문제입니다. [2]748류재상2/27/200819265Remoting , Tcp Channel 사용시.. 외부에서 접근 보안문제... [3]747한귀순2/20/200817608WinForm - DataGridView 소계 등 [3]746박상영2/20/200815564리모팅 관련해서 [3]1745조승현2/20/200816246Response.Charset ANSI로 설정..하는부분이 어려워서요.. [1]744오야2/5/200814882멤버십, 웹파트등의 생성테이블과 업무테이블간의 관계를 어떻게.. [2]743김기룡1/29/200816711동일 이미지 판단 방법 관련 [2]1740경혜원1/28/200818128C#에서 이런게 가능 할런지요?742정성태1/29/200816179 [답변]: C#에서 이런게 가능 할런지요? [1]738임경훈1/25/200817020웹서비스에서 오라클DB에 연결할 때741임경훈1/28/200816555 [답변]: 웹서비스에서 오라클DB에 연결할 때 [1]737단테1/25/200817943안녕하세요 정성태님. C Run-time Library의 배포에 대해서 질문있습니다. [3]736김현기1/24/200815665XML 접두어 포함한 XmlElement 작성법? [1]735정명원1/9/200815514ActiveX 사용시 ... [2]734제영한12/17/200715483웹서비스에서 사용자 정의 예외 사용하기 [2]732김기룡12/3/200718536WebRequest 요청시 일본어 인코딩 관련 문의1733김기룡12/3/200714633 일어가 깨졌네요..테스트 문자 추가합니다.^^;;1739adnim1/27/200816108 [답변]: WebRequest 요청시 일본어 인코딩 관련 문의 [1]731우기11/27/200713323[질문] clickonce 배포시 .net framework 2.0, 3.0 설치 시간 줄일 수 있는 묘수없을까요?? [1]730김재영11/10/200714103스레드에 사용되는 함수에 값을 같이 넘기는 방법이 있습니까?? [2]1 ... 61 62 63 64 65 66 67 68 69 70 71 [72] 73 74 75 ...