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 |
Tags
- 델파이
- SQL
- 소니
- MySQL
- xml
- 입문
- 파라미터
- 데이터베이스
- 파이어버드
- 셋업
- Firebird
- c#
- Visual Studio 2005
- 설치
- 예제
- Visual Basic
- 초보
- SDK
- VB.NET
- 기초
- MFC
- vb
- PostgreSQL
- dll
- WIN32 SDK
- 문자열
- 시리얼 통신
- Delphi
- 인스톨
- winsock
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