2018/01
C# 강좌 14편. 확장 메소드, 분할 클래스, 중첩 클래스 [최근 수정 2017.01.11]
2018. 1. 14.1. 확장 메소드(Extension Method)확장 메소드는 지금까지 우리가 보아왔던 메소드와는 다르게 조금 독특한 메소드라고 할 수 있습니다. 이 확장 메소드는, 기존 클래스의 기능을 확장시켜주는 메소드라고 볼 수 있습니다. 아래는 확장 메소드의 선언 형식입니다. namespace 네임스페이스명 { public static class 클래스명 { public static 반환형식 메소드명(this 확장대상형식 식별자, 매개변수..) { .. } .. } } 선언 형식을 보시면, 정적(static) 클래스를 먼저 정의하고 그 안에 확장 메소드가 정의되었습니다. 확장 메소드 역시 정적(static) 메소드여야 합니다(정적 메소드는 객체를 만들지 않고도 바로 호출이 가능). 그리고 메소드의 첫번째 매개변수..
C# 강좌 13편. 클래스의 상속(Class inheritance) [최근 수정 2017.12.26]
2018. 1. 12.1. 클래스의 상속(Class inheritance)이번에 배울 건 '클래스의 상속(Class inheritance)'입니다. 어? 상속이란 말을 어디선가 들어본 적이 있는 것 같지 않나요? 짐작하는 그 상속이 맞냐구요? 네 맞습니다. 혹시나 상속이 뭔지 들어보 적 없는 분들을 위해 무엇인지 알려드리려고 합니다. 상속이란 네이버 지식백과를 빌어 다음과 같이 정의되어 있습니다. '일정한 친족적 관계가 있는 사람 사이에 한 쪽이 사망하거나 법률상의 원인이 발생하였을 때 재산적 또는 친족적 권리와 의무를 계승하는 제도'. 즉, 부모님이 돌아가셨다고 할 때 그 유산을 자식이 물려받는 것이라고 할 수 있습니다. 클래스의 상속도 이와 똑같습니다. 객체 지향 프로그래밍에선 부모 클래스와 자식 클래스가 있는데, 부모 ..
C# 강좌 12편. 생성자와 소멸자(Constructor and Destructor) [최근 수정 2017.12.17]
2018. 1. 12.1. 생성자(Constructor)오늘은 생성자와 소멸자에 대해서 알아보도록 하겠습니다. 생성자와 소멸자를 간단히 소개하자면, 생성자는 객체를 생성할 때 호출되는 메소드이며, 소멸자는 객체를 소멸시킬 때 호출되는 메소드라고 할 수 있습니다. 우선 생성자 부터 알아보고, 이 생성자가 어떻게 쓰이는지 아래 예제를 살펴보며 생각해봅시다. 그러기 전, 생성자의 선언 형식부터 잠깐 보고 들어가보도록 합시다. 생성자의 일반적인 선언 형식: class 클래스명 { [접근 제한자] 클래스명(매개변수..) { // } .. }생성자의 선언 형식을 살펴보면, 생성자의 이름이 클래스의 이름과 똑같습니다. 그리고 이 생성자는 메소드와 같이 매개변수를 가질 수 있으며, 메소드와는 달리 특정 값을 반환할 수는 없고, 반환형도 가..
C# 강좌 11편. 접근 제한자(Access Modifier), this [최근 수정 2017.12.17]
2018. 1. 12.1. 접근 제한자(Access Modifier) 오늘은 접근 범위를 결정하게 해주는 접근 제한자에 대해서 알아보려고 합니다. 접근 제한자에는 public, protected, internal, private가 있습니다. 이미 public라는 접근 제한자는 본적이 있죠? 이 네 가지의 접근 제한자에 대해 알아보려고 합니다. 아래는 4개의 접근 제한자를 정리해놓은 표입니다. 접근 제한자 설명 private 클래스 내부에서만 접근이 가능합니다. public 모든 곳에서 해당 멤버로 접근이 가능합니다. internal같은 어셈블리에서만 public으로 접근이 가능합니다. protected클래스 외부에서 접근할 수 없으나 파생 클래스에서는 접근이 가능합니다. protected internal 같은 어셈블리에서만 ..
C# 강좌 10편. 클래스(Class) [최근 수정 2017.11.26]
2018. 1. 12.1. 객체(Object) 이번 강좌에서는 강력한 기능을 제공하는 클래스에 대해서 배우기 전에, 객체 지향 프로그래밍(Object Oriented Programming, OOP)에 대해 알고 넘어가야 하기에 객체 지향 프로그래밍이 도대체 무엇인지에 대해서 설명을 해드리도록 하겠습니다. 우리가 알고있듯 C#은 객체 지향 언어입니다. C#에서의 객체(Object)는 핵심 중에 핵심이라 말할 수 있죠. 오로지 객체만을 다루는 책이 있을정도로 객체를 완벽히 이해하기에는 많은 어려움이 있습니다. 우리 주위에서 객체는 쉽게 찾아볼 수 있습니다. 눈에 보이는 모든 것이 객체가 될 수 있습니다. 지금 앞에 보이는 모니터, 마우스, 키보드, 프린터, 달력, 가방, 자동차 등과 같이 개념상으로 존재하는 것은 모두가 객체가 ..