1. Class란 무엇인가~?
객체지향언어를 공부하면 많이 접하는 두개의 용어가 있다.
Class와 객체가 그것이다.
그럼 Class는 무엇인가?~ 그것에 대해 알아보자.
- Class : 책에는 객체의 개념을 담고 있는 최소 단위라고 나와있다.
이 말이 무엇인가? 고민고민을 한 후 내가 내린 결론은 의미의 범위라고 결론지었다.
의미의 범위란 단어는 무엇인가~ 즉 우리 일상생활의 의미를 가지는 단어들을 범위짓는다
라는 것이다.
예를 들어보자 우리가 사람이라는 클래스가 필요해서 만들수 있지만 어떤 프로그램에서는
그것 보다 포괄적인 의미인 동물이라는 클래스가 필요할 수도 있다.
즉 어떤 의미를 발견하고 그것에 대해 범위를 지어 단어를 추출하면 그것이 Class인
것이다.
- 객체 : 객체는 간단한게 Class에 메모리를 할당한 것이다.
즉 그림에 스케치를 한 것에 물감칠을 한것이라고 생각한다.
클래스는 다음과 같이 객체 정보를 메모리에 할당한다.
클래스명 변수:
변수 = new 클래스명();
or
클래스명 변수 = new 클래스명();
가독성 및 타자치기 귀차니즘으로 인해 밑에것을 애용한다.;
2. Class의 구성요소
- 메소드 : 일종의 실행부다. 글에서 보면 행동을 나타내는 동사의 역할을 한다.
- 변수 : 속성이다. 글에서 보면 이런 저런 속성을 의미한다.
일반적으로 메소드는 public으로 선언하며 변수는 private으로 선언한다.
왜냐! 보안적인 문제로 직접 변수를 수정할 수 없게하기 위해서다.
그래서 일반적인 자바와 같은 언어에서는 get set 함수가 존재한다.
즉 변수의 값을 수정하거나 가져오는데 public함수를 통해서만 접근할 수 있게 하는 것이다.
그런데 C#은 이걸 막노동이라 생각했는지 다음과 같은 기능이 추가되었다.
public [데이터타입] [속성이름]
{
get
{
return [값];
}
set
{
data = [값];
}
}
MS의 막노동을 줄여주는 방법 같지만....머 기존 방법과 그렇게 틀린점은 모르겠다..^^;
그럼 다음 장에서 Class의 구성요소에 대해 계속 알아보도록 하자.
객체지향언어를 공부하면 많이 접하는 두개의 용어가 있다.
Class와 객체가 그것이다.
그럼 Class는 무엇인가?~ 그것에 대해 알아보자.
- Class : 책에는 객체의 개념을 담고 있는 최소 단위라고 나와있다.
이 말이 무엇인가? 고민고민을 한 후 내가 내린 결론은 의미의 범위라고 결론지었다.
의미의 범위란 단어는 무엇인가~ 즉 우리 일상생활의 의미를 가지는 단어들을 범위짓는다
라는 것이다.
예를 들어보자 우리가 사람이라는 클래스가 필요해서 만들수 있지만 어떤 프로그램에서는
그것 보다 포괄적인 의미인 동물이라는 클래스가 필요할 수도 있다.
즉 어떤 의미를 발견하고 그것에 대해 범위를 지어 단어를 추출하면 그것이 Class인
것이다.
- 객체 : 객체는 간단한게 Class에 메모리를 할당한 것이다.
즉 그림에 스케치를 한 것에 물감칠을 한것이라고 생각한다.
클래스는 다음과 같이 객체 정보를 메모리에 할당한다.
클래스명 변수:
변수 = new 클래스명();
or
클래스명 변수 = new 클래스명();
가독성 및 타자치기 귀차니즘으로 인해 밑에것을 애용한다.;
2. Class의 구성요소
- 메소드 : 일종의 실행부다. 글에서 보면 행동을 나타내는 동사의 역할을 한다.
- 변수 : 속성이다. 글에서 보면 이런 저런 속성을 의미한다.
일반적으로 메소드는 public으로 선언하며 변수는 private으로 선언한다.
왜냐! 보안적인 문제로 직접 변수를 수정할 수 없게하기 위해서다.
그래서 일반적인 자바와 같은 언어에서는 get set 함수가 존재한다.
즉 변수의 값을 수정하거나 가져오는데 public함수를 통해서만 접근할 수 있게 하는 것이다.
그런데 C#은 이걸 막노동이라 생각했는지 다음과 같은 기능이 추가되었다.
public [데이터타입] [속성이름]
{
get
{
return [값];
}
set
{
data = [값];
}
}
MS의 막노동을 줄여주는 방법 같지만....머 기존 방법과 그렇게 틀린점은 모르겠다..^^;
그럼 다음 장에서 Class의 구성요소에 대해 계속 알아보도록 하자.