Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |
Tags
- 셋업
- dll
- Delphi
- SQL
- MFC
- SDK
- PostgreSQL
- 델파이
- 초보
- 설치
- 시리얼 통신
- c#
- vb
- 파라미터
- MySQL
- 파이어버드
- 소니
- 예제
- xml
- Visual Studio 2005
- 문자열
- 입문
- WIN32 SDK
- Visual Basic
- winsock
- 데이터베이스
- VB.NET
- 기초
- Firebird
- 인스톨
Archives
- Today
- Total
프로그래밍 노트
[C#] Interface 예제 본문
우선 Car라는 클래스를 만들고 그 클래스를 사용하는 Run이라는 함수를 만들어 본다.
private void Form1_Load(object sender, EventArgs e){Car a = new Car();Run(a);Close();}public void Run(Car car){MessageBox.Show("run!");}public class Car{}이번에는 Bike라는 클래스를 만들고 그 클래스를 사용하는 Run이라는 함수를 만들어 본다.Run을 표시하기 위해 Car를 위한 것과 Bike를 위한 것이 두 개가 필요하다.private void Form1_Load(object sender, EventArgs e){Car a = new Car();Bike b = new Bike();carRun(a);bikeRun(b);Close();}public void carRun(Car car){MessageBox.Show("run!");}public void bikeRun(Bike bike){MessageBox.Show("run!");}public class Car{}public class Bike{}이런 것을 쉽게 사용하기 위해서는 interface를 사용하면 쉽게 아래와 같이 해결할 수 있다.Vehicle이라는 interface를 만들어 Car나 Bike는 Vehicle이라는 interface를 가지고 있다는 것을 정의한다.private void Form1_Load(object sender, EventArgs e){Car a = new Car();Bike b = new Bike();Run(a);Run(b);Close();}public interface Vehicle{}public void Run(Vehicle v){MessageBox.Show("run!");}public class Car : Vehicle{}public class Bike : Vehicle{}Interface는 아래와 같이 Method를 정의할 수 있다.Interface는 실제 함수를 쓸 수는 없고 함수의 형태만 정의할 수 있다.Interface를 상속하는 클래스에서 Interface에 정의된 함수를 반드시 구현해야만 된다.private void Form1_Load(object sender, EventArgs e){Vehicle a = new Car();Vehicle b = new Bike();Run(a);Run(b);Close();}public void Run(Vehicle vehicle){MessageBox.Show(vehicle.getName() + " run!");}public interface Vehicle{String getName();}public class Car : Vehicle{public String getName(){return "Car";}}public class Bike : Vehicle{public String getName(){return "Bike";}}
Comments