C#클래스, 객체, 메서드 및 속성 상세 정보

4776 단어 C#
1. 관련 개념:
1. 대상: 현실 세계의 실체(세상 만물은 모두 대상) 2. 유형: 비슷한 속성과 방법을 가진 대상의 집합 3. 대상을 대상으로 하는 프로그램 설계의 특징: 봉인 계승 다태적 4. 대상의 세 가지 요소: 속성(대상이 무엇인지), 방법(대상이 무엇을 할 수 있는지), 사건(대상이 어떻게 응답하는지)
☆ 상호 관계: 클래스는 대상의 추상이고, 대상은 클래스의 실례이며, 클래스는 추상적인 분류이며, 대상은 구체적인 사물이다.예를 들어 만약에 차가 같은 종류라면 어떤 사람의 벤츠차가 하나의 대상이고 차의 색깔과 품질은 그의 속성이다. 이런 동작을 가동하고 멈추는 것은 차의 방법으로 정의할 수 있다.
2. 클래스의 정의와 문법 1. 정의 클래스: [수식자]class 클래스명 {클래스 구성원}
2. 클래스의 접근 수식자:public internal a)public: 접근 가능한 영역은 존재하는 프로그램과 인용된 프로그램의 접근이 제한되지 않는 문법이다.
 public class   
	 {
	      
	 }

b) internal: 액세스 가능 도메인 정의 범위(기본 액세스 수정자) 구문:
(internal) class   
	 {
	      
	 }

3. 클래스 구성원: 데이터 구성원과 필드 a) 데이터 구성원: 필드와 상수 필드: 변수 성명: 유형 필드 이름:
public class Persion
	{
	    public string name;
	}

b) 방법 구성원(방법은 클래스의 행위, 클래스가 무엇을 할 수 있는지 알려주는 것) 실례 방법: 수식자 반환값 유형 방법명(파라미터 목록)
 {
         
 }

수식자: 예를 들어public,private,protected,internal 반환값 형식: 방법이 반환값이 없으면 void예를 사용합니다:
public class Example01  //    
{
    public void SayHello()  //            
	    { 
	    Console.WriteLine("Hello There")
		}
		
	static void Main()
		{
		Example01 objA=new Example01()
		objA.SayHello()    //         
		}
}

정적 방법: 수식자static 반환값 형식 방법명 (파라미터 목록)//static 키워드 증가
  	 {
		   
	 }

예:
public class Example01  //    
{
    public static void SayHello()  //        
	    { 
	    Console.WriteLine("Hello There")
		}
		
	static void Main()
		{
		Example01.SayHello()    //       
		}
}

☆ 정적 방법과 실례적 방법의 차이: 정적 방법은 종류와만 관계가 있고 대상의 존재에 의존하지 않고 존재한다.실례 방법은 대상이 존재한 후에야 사용할 수 있다.
4. 구성원의 방문 수식자:public,private,protected,internal a)public: 공유 구성원 b)private:개인 구성원 c)protected: 보호 구성원 d)internal: 내부 구성원
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication2
{
    public class Employee
    {
        private float sum;
        public int day;
        public float wage;
        
        //          
        public void Show()
        {
            sum = day * wage;
            Console.WriteLine("    :{0},    :{1},   :{2}",day,wage,sum);
        }
    }
    
    class Program
    {
        static void Main(string[] args)
        {
            Employee employee = new Employee();
            employee.day = 20;
            employee.wage = 50;
            //employee.sum:              
            //        
            employee.Show();
        }
    }
}

3. 실례화 대상: 키워드: new 문법: 클래스 대상 이름 = new 클래스().
using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
  
namespace ConsoleApplication1 
{ 
    public class car 
    { 
        private string carName; 
        private string carType; 
        private int price; 
  
        public string CarName 
        { 
            get { return carName; } 
            set { carName = value; } 
        } 
        
        public string CarType 
        { 
            get { return carType; } 
            set { carType = value; } 
        } 
        
        public int Price 
        { 
            get { return price; } 
            set { price = value; } 
        } 
  
        public void  action() 
        { 
            Console.WriteLine("    {0} ,   {1},   :{2}",carName,carType,price); 
        } 
    } 
  
    //             
    class Program 
    { 
        static void Main(string[] args) 
        { 
            //  car     
            car vehicle = new car(); 
            
           //      
            vehicle.CarName = "  "; 
            vehicle.CarType = "XZ001"; 
            vehicle.Price = 1000000; 
  
            //     
            vehicle.action(); 
        } 
    } 
}

4. 속성 1, a) 개념: 액세스 클래스에 사용되는 필드의 구성원 b) 속성 용도: 데이터의 안전을 확보하고 데이터의 검증을 한다.
2. 성명:
              

     {
      get{return   ;}  //    ,               
      set{  =value;}  //    ,              ,          value    ,                  
	 }

예:
public class Student
	{
		private int age;   //    ,        
		public int Age
		{
			get{return age;}  //    age  
			set
				{
				if((value>=18)&&(value<=45))
				age=value;  // age     
				else
				age=18;
				}
		}
	}

3. 특수 속성: a) 읽기 전용 속성:public 데이터 형식 속성 이름
{
  	get{return   ;}
}

b) 자동 속성:
public          {get;set;}

5. 방법의 매개 변수 1. 값 매개 변수: 값에 따라 전달 2. 인용 매개 변수: 방법에 메모리에 실참된 주소를 전달하고 주소에 따라 전달 3. 출력 매개 변수: 방법에서 결과 키워드:out4, 수조형 매개 변수: 매개 변수는 한 조의 수조만 허용한다. 방법의 매개 변수 앞에 파라메스 키워드가 있을 때 수조형 매개 변수를 가진 방법(인용 전달)

좋은 웹페이지 즐겨찾기