본문 바로가기

프라퍼티

유니티27_C#17_인덱서(Indexer) 인덱서(Indexer) 인덱서의 특징은 다음과 같다. 배열(array)의 특징을 가진 프라퍼티(property)의 일종이다. 프라퍼티 처럼 클래스(class), 구조체(struct), 인터페이스(interface)의 멤버에 접근할 수 있게 한다. 프라퍼티가 필드에 접근한다면, Indexer는 색인(index 인덱스)를 이용해서 배열에 접근한다. 클래스 외부에서는 인스턴스(객체)를 배열처럼 사용할 수 있다. Indexer를 정의하는 형식은 다음과 같다. Indexer는 this 키워드와 배열(array) 선언할 때 붙이는 대괄호[ ] 를 사용하여 선언한다. 접근자 get , set 사용은 프라퍼티와 같고 int타입의 매개변수(index)를 통해서 접근한다는 것이 다르다. Indexer를 사용한 예를 만들어.. 더보기
유니티16_C#_09_캡슐화 앞 글에서 객체 지향 언어(OOP)의 출발점인 추상화로 클래스와 객체를 만들어 보았다. 이번에는 객체지향 언어의 클래스를 떠 받치고 있는 3개의 핵심 개념에 대해 알아본다. 캡슐화 (Encapsulation) 상속 (Inheritance) 다형성 (Polymorphism) 1. 캡슐화(Encapsulation) 캡슐화는 데이터를 캡슐에 넣는다는 뜻이다. 유산균을 캡슐에 넣은 제품이 기억난다. 유산균을 위산으로 부터 보호해서 죽지 않고 대장까지 가도록 캡슐화한 것이다. 코딩에서 캡슐화도 '묶음'과 '보호'라는 역할을 담당하기 위해 고안되었다. 캡슐화의 목적은 2가지이다. 1. 멤버(필드, 메서드)를 하나의 단위로 묶는다. 2. 멤버(필드, 메서드)를 보호한다. 즉, 멤버를 묶어서 보호하는 것이 캡슐화의 목.. 더보기