천문 프로그래밍과 관련된 이야기를 나눌 수 있는 곳입니다.
총 게시물 144건, 최근 0 건
   
[C#]클래스와 객체의 기초
글쓴이 : 박종현 별님  (218.♡.4.2) 날짜 : 2007-10-10 (수) 08:08 조회 : 9751
작성자: 박종현(세티)
작성일: 2007년 10월 10일
작성로그: C#클래스에 대한 기본적인 구성과 객체의 기초에 대해 알아보자.
 
본 글 내용에 대한 임의적 편집을 허가하지 않습니다.
 
객체지향언어(OOP) - Object Oriented Programming
객체(Object or Instance) - 프로그래밍에서 설계하고자 하는 대상의 추상적 단위
 
클래스의 구성요소
● 제한자 - private, public, protected, internal
● 변경자 - static
● 구성요소 - Constructor, Destructor, Property, Indexer, Field, Delegate, Method, Event
(소멸자와 인덱서에는 static 변경자를 사용할 수 없음)
 
 
C# 코드에서 클래스임을 선언하는 방법
namespace NamespaceName
{
    class ClassName
    {
 
    }
}
 
 
객체 생성의 골격
ClassName cn = new ClassName();
클래스 이름 - ClassName
객체 이름 - cn
new 연산자
생성자
 
 
클래스의 예
class ClassName
{
    public ClassName() // 생성자(Constructor)
    {}
     private int m_Member; // 사적 멤버 변수(Private Member Field)
     protected int b_Member; // 보호 멤버 변수(Protected Member Field)
     public static int s_Member; // 공적 정적 멤버 변수(Protected Member Field)
 
    public int Member // 접근자(Property)
    {
       get { return m_Member; } // Get property
     set { m_Member = value; } // Set property
    }
    public void MemberMethod(){ } // 공적 멤버 메소드 (Public Member Method)
    public static void StaticMemberMethod(){ } // 공적 정적 멤버 메소드
    public event EventName(); // 공적 이벤트
}
 
위의 디자인된 클래스를 아래의 예제처럼 객체화 할 수 있다.
 
 
객체화란?
- 디자인 클래스에서 정의된 변수들을 저장할 수 있는 메모리 공간을 확보하는 과정
 
ClassName cn = new ClassName(); // 객체 생성
cn.Member = 1; // set property 사용 예
int val = cn.Member // get property 사용 예
cn.MemberMethod(); // 멤버 메소드 사용 예
ClassName.staticMemberMethod(); // 정적 멤버 메소드 사용 예
(정적 멤버 메소드는 클래스 자체의 이름을 사용한다.)
[이 게시물은 최고관리자님에 의해 2012-12-20 11:00:41 프로그래밍 강좌에서 이동 됨]

이형철별님 (203.♡.137.2) 2011-01-20 (목) 10:10
배워보자 C# 에서 이동되었습니다.
댓글주소
   

총 게시물 144건, 최근 0 건
번호 제목 글쓴이 날짜 조회 추천
144  음양력 변환 프로그램 CalTime 3.4 +1 김동빈별님 11-24 8244 0
143  현재 시간에 따른 태양, 달 위치 계산. +1 조재훈별님 08-30 7607 0
142  [DreamSpark] Microsoft의 정품 프로그램을 무료로 … +6 백승우별님 01-21 8829 0
141  일식 예측을 위한 태양과 달의 위치 계산 +1 이형철별님 11-21 11191 0
140  사이토구니치의 古天文學 번역판을 공개하며 +1 이형철별님 08-22 11542 2
139  [AstroDev의 C언어 강좌] 나왔다 Hello World!!! +3 유환용별님 07-01 9036 0
138  [AstroDev의 C언어 강좌] 컴퓨터 데이터 표현 방… 유환용별님 06-28 10359 0
137  IAU2000 장동 모델 +2 김창환별님 06-25 12175 0
136  [AstroDev의 C언어 강좌]메모리 안에서는 무슨일… +10 유환용별님 06-10 12634 0
135  [AstroDev의 C언어 강좌]우리는 무엇을 준비해야… +7 유환용별님 06-08 10539 0
134  [AstroDev의 C언어 강좌]우리는 무엇을 준비해야… +3 유환용별님 06-07 10138 0
133  [AstroDev의 C언어 강좌]C언어를 공부하기 전에 … +4 유환용별님 06-06 10710 0
132  IAU2006 세차 모델 +1 김창환별님 05-18 10991 0
131  각도변환문제 : 도(degree), 시(hour), 라디안(radia 지용호별님 04-15 19436 0
130  지구의 세차운동(歲差運動, Precession) 계산하… +5 지용호별님 04-14 15167 0
 1  2  3  4  5  6  7  8  9  10  맨끝
 
Since 2001.2.7 과학기술정보통신부 등록 비영리민간단체 천문노트. Copyright All rights reserved.
단체명 : 천문노트  |    고유번호 : 101-82-15888  |    대표자명 : 김태욱, 조우성  |    주소 : 138-804 서울특별시 송파구 가락동 93 금강빌딩 7층 710호  |    전화 : 02-543-3295  |    Fax : 02-6918-6888  |    통신판매신고번호 : 종로 제01-5696호  |    개인정보관리책임자 및 사이트관리자 : 지용호