본문 바로가기

728x90
반응형

.NET

(39)
System.Object 클래스 상속 사용자가 만드는 대부분(거의 모든)의 클래스는 자동으로 System.Object 클래스를 상속 받게 되어집니다. 그래서 내가 만든 클래스에 보면 ToString(), Equals(), GetHashCode()라는 메소드가 인텔리전스로 같이 나오는걸 항상 볼수가 있었지요. 뭐 제가 아는 것인 이것까지이고요 ^^ 상속을 받은 메소드이기 때문에~ 우리는 이 메소드들을 우리가 마음대로 가지고 놀(?) 수가 있는 것이지요. 그럼 한번 Object 클래스를 상속 받아 제가 원하는 방식으로 바꿔보겠습니다.(원래 어떤 형식인지는 뜯어보지 않아서 잘은 모르겠습니다 ㅜㅜ) 1 class Dummy : Object 2 { 3 private int data; 4 public int Data 5 { 6 get { return ..
Property의 get, set 에 대한 간단한 정리 제 머리로는 도저히 안되길래 hoons에 도움을 받았습니다.(hoons가 뭐냐고요?? 닷넷 커뮤니티죠 ㅎ www.hoons.kr 여기로 가시면 들어가실수 있죠)] 우선 property는 1. 1 private string name; 2 public string GetName() { return name; } 3 public void SetName(string n) { name = n; } 2. 1 private string name; 2 public string Name 3 { 4 get { return name; } 5 set { name = value; } 6 } 3. 1 public string Email { get; set; } 요렇게 3가지의 방법을 구현을 할 수 있지요 보통은 1번은 거의 안쓰..
Class(4) 클래스 그 4번째 시간이네요. 오늘 상속으로 인해서 일어날 수 있는 다형성에 대해서 알아보려고 합니다. 혹시 "다형성?? 그게 뭐야?" 라고 하시는 분들이 있으신가요? 휴~!!다행...괜히 쌩쇼하면 그렇잖아요 ㅎㅎ 다형성이란 상속을 통해서 클래스를 한 개 이상의 형식으로 사용할 수 있게 해주는 개념, 즉 클래스를 고유한 자체 형식이나 임의의 기본 형식을 사용할 수 있고 클래스가 인터페이스를 구현하는 경우 인터페이스 형식으로 사용할 수 있는데 그것을 다형성이라고 합니다. C#에서 모든 형식은 다형성을 지니고 있지요. Class(3)에서 말했던 override, new에 대한 내용도 다형성을 설명하는 중요한 개념이고 할 수 있습니다. 다형성 공부하다가 살짝 졸았다는 ㅜㅜ(금세 30분이 지나간 ㅎㄷㄷ) 우선 ..
Class(3) 클래스 3번째 시간이네요~ 와 나두 잘 모르는 클래스를 포스팅한다는게 정말 만만치가 않네요 그래서인지 자료도 허접하고 내가 뭐라뭐라 써논건지도 모르겠고요 ㅜㅜ 그래도 혹시라도 제 블로그에 오셔서 도움을 받으실지도 모르는 분들을 위해서 열심히 노력해서 쓰겠습니다~^^(몇분이나 될려나 ㅜㅜ) 이번에는 클래스 필드의 속성값(?)에 대한 내용과 상속에 대해서 알아보려고합니다. 아무래도 상속이 나오면...살짝쿵 길어질지도 모르겠는데요...여러분의 인내심이 버텨주실려나 모르겠네요 ㅎㄷㄷ 클래스 멤버에는 필드, 메소드로 나눌 수 있다고 하였습니다. 보통 필드는 private로 설정해나서 외부에서의 접근을 최대한 막을려고 하는 습성이 있지요. 그래도 자신의 클래스의 메소드가 접근하는것은 기본적으로 막지 않고 있지만 그..
Class(2) 클래스에 대해서 알아보는 두번째 시간입니다. 지난 시간에는 클래스의 기초적인 property의 사용법과 간단히 메소드 사용도 알아보았죠. 이번에는 클래스의 생성 및 객체 초기화에 대해서 알아보도록 하겠습니다. 클래스를 생성할 때 클래스와 똑같은 이름의 메소드를 본적이 있으실 겁니다. 그 메소드를 생성자메소드라고 합니다. 생성자메소드는 항상 클래스의 이름과 같고 결과형은 없습니다. 하지만 그게 void 형식이라는 것은 아닙니다. 왜인지 궁금하시다면 생성자메소드에 void를 살짝 붙여보시길 바랍니다 ^^;; 생성자 메소드는 객체 생성시(new 호출시) 자동으로 호출되며 명시적으로는 호출할 수 없습니다. 생성자 메소드 또한 overloading이 가능합니다. new호출의 전달인자 갯수와 종류로 생성자 메소드를..
Class(1) 이제 드디어 객체지향프로그래밍의 꽃이라고 할 수 있죠. class에 대해서 알아보려고 합니다. 우선 기본적인 class의 특징 및 간단한 구현을 통해 알아보도록 하겠습니다. class는 특성과 기능을 표현한 것입니다. 특성은 data, 기능은 method를 말한 것입니다. 이 둘을 합쳐서 class의 멤버라고 부릅니다. class 멤버 변수는 은닉화 때문에 기본적으로 다른 곳에서 접근이 불가능 합니다. proivate는 defualt 속성으로 접근 할 수 없게 만드는 것이고 public 은 접근이 가능 하게 해주는 속성입니다. 일반적으로 class를 만들때 data는 private로 접근 할 수 없게 하고 method는 public화 하여 접근을 할 수 있게 합니다. 은닉화가 필요한 method라면 pr..
C# enum, struct 이번 시간에는 enum과 struct에 대해서 알아보려고 합니다. 우선 enum에 대해서 알아볼까요? 싫으시다고요? ㅜㅜ 그럼 안되요 안되요~!!ㅎㄷㄷ 죄송합니다 ㅎㅎ 우선 enum의 생성에 대해서 알아보겠습니다. 1 enum Color 2 { 3 Red, 4 Blue, 5 Green 6 } 다음과 같이 하게 되면 enum을 만들게 되는 것입니다. 참 쉽죠? ㅎ 이때 enum은 기본적으로 각 데이터 하나 하나에는 value값이 들어가게 되는데요. 아무값도 지정되어 있지 않다면 디폴트로 첫 데이터는 0의 값을 가지게 되고 다음꺼는 1 그 다음은 2 이렇게 1씩 증가하게 되어 있습니다. 결국 Red는 0의 값 Blue는 1, Green은 2의 값을 가지게 되는 것이지요 만약 첫 자료의 값을 준다면 거기서 1..
C# Array 에 대해서... 이번 포스트에서는 Array, 즉 배열에 대해서 알아보려고 합니다. 배열이라 함은 동일한 형식의 Data 집합이라고 할 수 있습니다. 그리고 배열은 생성 시점 즉 런타임에 크기가 결정 된다는게 특징이라 할 수 있지요. 배열은 System.Array 클래스의 상속 객체로 참조형이라는 특성을 가지고 있습니다. 배열 객체 생성 형식을 봐보면요 자료형 [] 이름; 이름 = new 자료형[크기]; 또는 자료형 [] 이름 = new 자료형[크기]; 이런식으로 배열을 생성합니다. 배열을 구현을 해보겠습니다~~. 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 6 namespace ArrayTes..

728x90
반응형