개발 관련 학습정리(62)
-
[C#] 클래스 : 정적필드, 얕은 복사와 깊은 복사, this 키워드
1. 정적 필드 프로그램 전체에 걸쳐 공유해야 하는 변수를 사용할때 정적 필드 안에 생성하면 전체에 공유를 할 수 있다. 이와 같이 Global이라는 정적 필드에 public static int count 라는 변수를 선언하면 프로그램 전체에 공유 할 수 있습니다 변수 뿐만 아니라 메소드도 공유할 수 있으며, 정적 메소드라고 불립니다. 인스턴스가 아닌 클래스 자체에 소속되고 정적 메소드가 클래스의 인스턴스를 생성하지 않아도 호출이 가능합니다. 2. 객체 복사 (얕은 복사와 깊은 복사) 얕은 복사 바로 코드를 보도록 합시다. 먼저 객체 source 선언, source의 field1,2에 10,20을 대입합니다. target객체를 만들고 sourve를 대입 후, target field2에 30을 대입합니다...
2019.04.01 -
[C#] 클래스 : 생성자, 소멸자
1. 생성자 클래스를 선언할 때 명시적으로 생성자를 구현하지 않아도 컴파일러에서 만들어 주는 것으로, 객체의 필드를 원하는 값으로 초기화 할때 주로 쓰는 메소드입니다. 오버로딩이 가능하여, 다양한 버전의 생성자가 가능합니다. 2. 소멸자 생성자의 이름은 클래스의 이름과 같지만, 클래스의 이름에 ~를 붙인 꼴을 한 소멸자는 생성자와는 달리 매개 변수도 없고, 한정자도 사용하지 않습니다. 또한 오버로딩도 불가능하며, 호출도 불가능 합니다. 종료자는 가급적으로 구현하지 않는게 좋은데, 그 이유는 CLR의 가비지 컬렉터가 우리보다 더 똑똑하게 객체의 소멸을 담당해주고있기 때문에 뒷처리는 가비지 컬렉터에 맡기는 편이 좋습니다.
2019.03.31