차례:
정의-객체 란 무엇입니까?
C #에서 Object는 동적으로 생성되는 클래스의 인스턴스입니다. Object는 또한 .NET 프레임 워크에서 사전 정의 된 유형 System.Object의 별명 인 키워드입니다.
C #의 통합 형식 시스템을 사용하면 개체를 정의 할 수 있습니다. 이들은 사용자 정의, 참조 또는 값 유형일 수 있지만 모두 System.Object에서 직접 또는 간접적으로 상속됩니다. 이 상속은 암시 적이므로 System.Object를 기본 클래스로 사용하여 개체 유형을 선언 할 필요가 없습니다.
일반적으로 오브젝트 유형은 일반 루틴을 빌드해야하는 경우 유용합니다. 모든 유형의 값은 객체 유형의 변수에 할당 될 수 있기 때문에 객체 유형은 코드를 재사용 할 수있는 모든 유형의 객체를 처리하는 클래스를 설계 할 때 주로 사용됩니다. ArrayList, Queue 등과 같은 .NET 프레임 워크 라이브러리의 비 일반 콜렉션 클래스는 오브젝트 유형을 사용하여 다양한 콜렉션을 정의합니다.
객체는 인스턴스라고도합니다.
Techopedia는 Object를 설명합니다.
객체는 비슷한 객체 집합에서 고유 한 값을 갖는 인스턴스 멤버로 구성됩니다.
C # 코드에 사용 된 모든 개체는 개체 유형입니다.
객체가 인스턴스화되면 메모리 블록이 할당되고 객체의 기본이되는 클래스가 제공 한 청사진에 따라 구성됩니다. 값 형식의 개체는 스택에 저장되고 참조 형식의 개체는 힙에 할당됩니다.
C # 코드 실행은 .NET의 관리되는 환경에서 이루어지며 가비지 수집기는 자동 메모리 교정을 제공하므로 개체에 할당 된 메모리를 명시 적으로 할당 해제 할 필요가 없습니다. 값 형식의 개체는 범위를 벗어나면 소멸되지만 참조 형식 개체는 마지막 참조가 제거 될 때까지 비 결정적 방식으로 소멸됩니다.
C #에서 생성 된 개체와 관련된 두 가지 작업은 boxing과 unboxing입니다. boxing은 값 유형을 객체로 변환하는 것을 의미하지만 unboxing은 객체를 값 유형으로 변환하는 것을 말합니다. 복싱 및 언 박싱 작업은 성능을 저하시킬 수 있으므로주의해서 사용해야합니다.
이 정의는 C #의 맥락에서 작성되었습니다.