|
객체는 사람, 개, 비행기, 바다, 공기 등등 세상의 모든것을 지칭할 수 있습니다.
객체의 특성으로는 상태, 행동, 독자성으로 정리가 가능합니다.
저번 메소드 포스팅에서 아래의 내용을 다뤘습니다. 그래도 아래를 이해하면 객체지향에 접근하기 쉽기 때문에 다시한번 넣어봤습니다. 사실은 양늘릴려고 ㅋㅋㅋ
C#을 시작하고 나서 프로그램을 접할때 인터페이스? 클래스? 메소드?
도대체 어떤 차이점이 있는거지? 라고 고민한 경험이 있었습니다.
갑자기 나온 용어에 어렵게 생각하지 않으셔도됩니다.
인터페이스 : 자동차
클래스 : 소형차, 중형차, 상용차(트럭)
메소드 : 시동걸다. 가속한다. 멈추다. 후진한다.
인터페이스안에 클래스가 포함되고 클래스안에 메소드가 포함됩니다.
※ C# 소스와 인터페이스는 같지 않습니다. C# != 인터페이스
자동차라는 인터페이스는 소형차, 중형차, 상용차의 공통적인 부분을 다루고
소형차 클래스는 공통적인 부분에 소형차의 특징을 추가하고
중형차 클래스는 공통적인 부분에 중형차의 특징을 추가하고
상용차 클래스는 공통적인 부분에 상용차의 특징을 추가합니다.
위에서 소형차클래스대로 완성된 소형차에 맞는 시동메소드를 장착합니다.
위에서 소형차클래스대로 완성된 소형차에 맞는 가속메소드를 장착합니다.
위에서 소형차클래스대로 완성된 소형차에 맞는 정지메소드를 장착합니다.
위에서 소형차클래스대로 완성된 소형차에 맞는 후진메소드를 장착합니다.
위에서 중형차클래스대로 완성된 소형차에 맞는 시동메소드를 장착합니다.
위에서 중형차클래스대로 완성된 소형차에 맞는 가속메소드를 장착합니다.
위에서 중형차클래스대로 완성된 소형차에 맞는 정지메소드를 장착합니다.
위에서 중형차클래스대로 완성된 소형차에 맞는 후진메소드를 장착합니다.
위에서 상용차클래스대로 완성된 소형차에 맞는 시동메소드를 장착합니다.
위에서 상용차클래스대로 완성된 소형차에 맞는 가속메소드를 장착합니다.
위에서 상용차클래스대로 완성된 소형차에 맞는 정지메소드를 장착합니다.
위에서 상용차클래스대로 완성된 소형차에 맞는 후진메소드를 장착합니다.
|
해서 중요한것에만 초점을 맞추어 관리하는 개념이다.
출력부분을 통하여 기능이 작동하는 것을 말한다.
예를들어 자판기 캔커피를 뽑을때 돈전이들어간뒤, 몇원짜리 동전인지
파악하고, 동전의 가격의 커피선택 버튼에 불이 들어오게 하고, 누르면
어쩌고저쩌고 이런걸 모두 알필요가 없다.
사용자는 동전을 넣고 버튼을 누른뒤 커피를 받으면 끝나는 것이다.
예를들어 벽돌집을 지을때 스스로 시멘트를 만들고 벽돌을 만들필요
없이 시멘트를 사고, 벽돌을 사서 집을 지으면 된다.
시멘트라는 기능을 가진 프로그램을 다른사람이 만들고
위치시키는 체계를 말한다.
|
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- namespace ConsoleApplication1
- {
- class Car
- {
- public string name; // 자동차의 모델명을 나타내는 필드
- public string brand; // 자동차의 상표를 나타내는 필드
- public string owner; // 자동차 소유자 이름을 나타내는 필드
- public void brake() // 브래이크 밟기
- {
- Console.WriteLine("헉! 사람이다. 브래이크 밟아!");
- Console.WriteLine("{0} : 끼이익!\n", name);
- }
- }
- class Program
- {
- static void Main(string[] args)
- {
- Car car = new Car();
- car.name = "쿵.. 퍽!";
- car.brand = "느티나무";
- car.owner = "꼬길동";
- car.brake();
- Console.WriteLine("차의 모델명 : {0}\n자동차의 상표 :
- {1}\n자동차의 소유자 : {2}",
- car.name, car.brand, car.owner);
- }
- }
- }
9행 : Car라는 클래스가 등장합니다. 이 클래스 안을 살펴보면 자동차의 모델명을 나타내는 필드, 브랜드를 나타내는 필드, 소유주의 이름을 나타내는 필드와 브레이크를 밟는 메소드가 존재합니다.
26행 : Car라는 틀로 car라는 객체를 만들고 있습니다.
27~29행 : 에서 필드의 값을 초기화시키고 있습니다.
31줄 : Car 객체 내에 있는 Brake라는 메소드를 호출하고 있습니다.
32행 : 모델명, 상표, 소유자를 출력시키고 프로그램이 종료됩니다.
'컴퓨터프로그래밍 > C#' 카테고리의 다른 글
생성자와 소멸자 (0) | 2016.11.25 |
---|---|
접근제한자와 this (0) | 2016.11.24 |
C# - 메소드 오버로딩 (0) | 2016.11.24 |
C#_메소드_인자(변수)전달하기 (0) | 2016.11.24 |
C# 변수의 범위 (0) | 2016.11.22 |