static 개념

폭풍저그머성찡 ㅣ 2018. 12. 17. 14:57

C# 시작할 때 이게 너무 헷갈렸다.


난 분명히 class 안에 메서드를 만들었을 뿐인데 자꾸 static이 어쩌구 하면서 실행이 안된다.


C의 static 과 별로 다른게 없긴 하다. 하지만 class를 사용할 때 여러가지 제약이 따른다.


static으로 선언된 메서드는 클래스 내의 다른 인스턴스 멤버들을 참조 할 수 없다.


클래스 앞에 static이 붙으면 그 클래스 내의 모든 메소드와 필드는 static으로 선언되어야하며


그 클래스는 인스턴스를 가질 수 없고 메서드를 사용할 때에는 무조건 클래스.메서드 의 형식으로 호출해야한다.


static키워드가 붙은 필드는 클래스가 초기화되는 시점에 메모리를 할당받고 그 뒤로 새로운 인스턴스가 생길 때도 같은 메모리 주소를 사용한다.





'공부 > C#' 카테고리의 다른 글

delegate 개념  (0) 2018.12.17
클래스  (0) 2018.12.15
데이터타입과 변수  (0) 2018.12.15