반응형
클래스, 필드, 메서드, 생성자 == java 동일
종료자가 있음!
class 클래스_명
{
~클래스_명() // c++ 하고 같음! 파괴자!
{
}
}
// GC가 있는데도 왜 종료자가! => GC 할때 호출된다고 한다!
정적(static) 멤버와 인스턴스 맴버
멤버 -> 필드, 메서드
정적 선언 위치가 java 랑 다르게 맨 앞이다.
static public int CountOfInstance;
그래서 기본 Main 선언형이 java랑 다른 모습이다.
class Program
{
static void Main(string[] args)
{
//Main
}
}
namespace 가 있다. (c++ 용)
프로퍼티 문법 지원 ( get/set )
class Circle
{
double pi = 3.14;
public double Pi
{
get { return pi; }
set { pi = value;}
}
}
상속제한 예약어 sealed ( java 의 final )
System.Array 을 자동으로 상속받는 배열들 그리고 Array 의 멤버 사용 예제
int[] intArray = new int[] { 5, 4, 3, 2, 1 };
Console.WriteLine("배열의 차원 수: " + intArray.Rank);
Console.WriteLine("배열의 요소 수: " + intArray.Length);
Console.WriteLine();
for(int i=0;i<intArray.Length;i++)
{
Console.Write(intArray.GetValue(i)+",");
}
Array.Sort(intArray);
Console.WriteLine("정렬 후 : ");
for (int i = 0; i < intArray.Length; i++)
{
Console.Write(intArray.GetValue(i) + ",");
}
//복사!
int[] copyArary = new int[intArray.Length];
Array.Copy(intArray, copyArary, intArray.Length);
base ( java 에서 super )
virtual , override ( c++ 의 virtual 과 동일 , 가상메서드 선언 , 그리고 상속받은 클래스 구현시 override 이용 )
c++ 같이 연산자 오버로드 가능!
delegate 연쇄 함수포인터 연산자? GUI 이벤트 추가 선언등에 잘쓰임!
반응형