C#공부하기 23 객체지향 - 재이용성 [상속, 다형성]

 

 

C#공부하기 21은 객체, 22번째글은 캡슐화까지 공부하였고, 23은 재이용성에 대해서 공부해 봅시다.^^

 

객체지향

 - 재이용성: 상속, 다형성

 

 

클래스의 개층구조

- 추상과 구체화

 

 

상위 개념과 하위 개념

 

 

 

 

다음글에서도 재이용성 [상속, 다형성] 에대해서 공부해보겠습니다. ^^

 

 

C#공부하기 23 객체지향 - 재이용성 [상속, 다형성]

C#공부하기 22-3 setter / getter

 

C#공부하기 22-3번째 글입니다.

객체지향 - 캡슐화에 대해서 계속 공부중이죠 ^-^

 

이번글은 setter / getter 에 대해서 배우도록 할께요 !!

오늘하루도 ~~ 즐!!! 겁게 ♪♪♬

 

setter / getter

- 단순한 데이터도 멤버 함수를 사용하여 읽고 쓴다.

 

 

- 귀찮아도 public으로 하고

   싶은 멤버의 수만 Set / Get

   짝으로

   * seter/geter를 호출함.

   * ↑accessor라고 부르기도

      합니다.

 - 이유

   * 내부사양이 바뀌어도

      외부 사양을 바꾸지 않기

      위해

   * 다형성을 위해

     (나중에 다형성도 배워요 )

 

 

 

 

 

 

 

C#에서는 "속성"이라는 accessor용의 구문이 따로 있습니다.

 

 

C#공부하기 22-3 setter / getter

C#공부하기 22-2 Private와 Public

 

C#공부하기 객체지향[캡슐화]에대해서 계속 공부합니다. ^^

 

C#공부하기 22번째 글부터는 객체지향 -> 캡슐화에 대해서 계속 공부하고있으니 참고해주세요~

 

이번글은 Private와 Public에 대해서 공부해볼꺼에요 ^^

 

Private

- 클래스 밖에서 안으로 보임(은폐, 캡슐화)

 

Public

- 클래스 밖에서도 보임 (공개)

 

 

클래스정의 입장

 

 

 

 

<----- 밖에서 안보임

list를 잘못 사용하면 잘못됨

리스트의 길이 num을 함부로

변경하면 잘못됨

 

<--- 밖에서 보임

 Add등을 통해서 list나 num의

 내용을 변경

 

 

 

글래스 사용 입장

 

 

<--- 에러

<--- OK

 

 

 

 

지침

- 데이터 감춤 (private)

- 처리를 보인다 (public)

 

 

 

C#공부하기 22-2 Private와 Public

C#공부하기 22-1 객체지향[캡슐화]

 

지난글에 이어 이번 C#공부하기 글도 객체지향 -> 캡슐화에 대해서 공부해볼께요 ^^

 

 

객체지향 -> 캡슐화 : 개발자와 이용자, 구현감춤

 

자신도 사용자가 된다!!

- 일단 프로그램을 짠 후에는 자신도 사용자가 됩니다.

 

 

 

* 내용(구현)은 감춘다

* 인터페이스가 되는 처리만 클래스밖에 공개

C#오프라인 교육알아보기~~ ---> 클릭을 눌러주세요 ^-^

 

 

C#공부하기 22 객체지향[캡슐화]

 

이번 C#공부하기 22번째 글은 객체지향의 캡슐화에 대해 공부를 시작해볼께요 ^^

 

객체지향 -> 캡슐화 : 개발자와 이용자, 구현 감춤

 

2가지의 시점

 

- 개발과 사용 (ex. 텔레비젼)

 

 

 

프로그래밍 수칙

- 수개월전의 자신은 이미 다른사람

* 자신이 짠 프로그램도, 자세한 것은 잊어버린다.

 

프로그래밍 수칙을짜봅시다.

-주석을 잘 단다

-읽기 쉬운 코드를 작성한다

- 처리 단위별로 함수화 한다

--> 자신을 위해!!! 하는거죠~~

 

 

 

C#공부하기 -- 캡슐화에 대해서는 계속됩니다~^^

 

 

C#공부하기 21-2  객체지향[객체]

 

이번글도 파이팅넘치게 공부해볼까요?!

C#공부하기21-1 객체지향[객체]에 대해 공부해보겠습니다.

 

객체지향 -> 객체 : 데이터 중심의 프로그래밍

 

C#클래스 = C의 구조체를 확장

 

class StudentList

{

List<Student> list;

int num;

 

public void Add(Student s);

public void Remove(Student s);

public Student Find(int id);

};

 

- struct 대신에 class 키워드

* 실제론 struct도 클래스로 사용가능

 

- 멤버변수와 멤버함수 사용

* 멤버변수: 어떤 데이터를 가지는가

* 멤버함수: 어떤 처리가 가능한가

 

- private과 public

* 클래스의 외부에 보이는지 체크

 

생성자 = 초기화를 위한 특수한 멤버함수

 

class Person

{

public string name;

public int age;

 

public Person(string n, int a)

{

name=n;

age=a;

}

};

 

--> * 클래스명과 같은 이름

 * 리턴 타입을 지정안함

 

 

Person pp= new Person("화자", 4)

 

--> * 인스턴스 작성시 호출됩니다.

 * 인스턴스 작성방법

 

 

C#공부하기 21-2  객체지향[객체]

 

 

C#공부하기 21-1 객체지향[객체]

 

지난시간에 이어 객체지향[객체]공부를 해볼까~~요~~

 

객체지향 - > 객체 : 데이터 중심의 프로그래밍

 

데이터의 표현 방법

- 객체지향의 주인공은 클래스와 인스턴스입니다.

 

 

 

- C#의 클래스 = C 구조체를 확장한 것

 

 

 

 

 

 

 

 

<- 어떠한 데이터를 가지고있는가

 

<- 어떠한 처리가 가능한가

 

 

 

 

 

         

 

 

<- 어떠한 데이터를 가지고 있는가 

: 맴버변수

 

<- 어떠한 처리가

가능한가

:맴버함수

 

 

 

 

C#공부하기 21-1 객체지향[객체]

 

 

C#공부하기 20 - 객체지향

 

오홋!!

벌써 C#공부하기 20번째 글이 되었습니다.

20번째글부터 몇번재 글까지인지는 모르겠으나 객체지향에 대하여 배우도록 할거에요 ^-^

 

객체지향 프로그래밍에 대해서 공부해 볼까요?!

 

 

객체지향프로그래밍

[Object- Oriented Programming]

 

객체지향프로그램은 C, Pascal, Basic 등과 같은 절차형 언어가 크고 복잡한 프로그램 구축하기 어렵다는 문제점을 해결하기 위해 탄생된 것입니다.

절차형 언어에서는 코드 전체를 인쇄하는 기능부분과 유저로부터의 입력을 받는 기능부분 등으로 분활합니다.

이와 같이 각 기능부분을 구성하는 코드를 모쥴이라고 합니다. 절차형 언어에서는 플그램을 여러 기능으로 나누고 이들 모쥴을 편성하여 프로그램을 작성할 경우 각 모쥴이 처리하는 데이터에 대해서는 전혀 고려하지 않습니다. 다시말하면 데이터 취급이 완전하지 않고 현실 세계의 문제를 프로그램으로서 표현하는 것이 곤랍합니다. 이러한 절차형 프로그래밍이 가지는 문제를 해결하기 위해서 탄생된 객체지향프로그래밍은 객체라는 작은 단위로서 모든 처리를 기술하는 프로그래밍 방법으로서, 모든 처리는 객체에 대한 요구의 형태로 표현되며, 요구를 받은 객체는 자기 자신 내에 기술되어 있는 처리를 실행합니다. 이 방법으로 프로그램을 작성할 경우 프로그램이 단순화되고, 생산성과 신뢰성이 높은 시스템을 구축 할 수 있습니다.

 

-출처 두산백과-

 

 

객체지향

- 객체 : 데이터 중심의 프로그래밍

- 캡슐화 : 개발자와 이용자, 구현 감춤

-  재이용성 : 상속, 다형성

 

이 세가지를 공부할 것입니다.

다음시간은 객체에 대해서 먼저 공부하도록 하겠습니다. ^-^

다음글에서 만나유~~><

 

 

 

it공부는 ---> it개발자스터디공간에서~~♬

 

C#공부하기 20 - 객체지향

 

+ Recent posts