Study (47) 썸네일형 리스트형 [Unity] 게임 오브젝트의 흐름 유니티에서 게임 오브젝트의 흐름은 크게 3가지로 구분된다. : 게임 오브젝트가 생성 or 활성화 1. Awake() - 게임 오브젝트가 생성될 때 (스크립트가 로드될 때) 1회 실행된다. - 주로 변수 초기화 or 다른 오브젝트와의 연결 설정할 때 사용된다. 2. OnEnable() - 게임 오브젝트가 활성화 되었을 때 1회 실행된다. ex) 로그인 3. Start() - 업데이트 시작 전 1회 실행된다. (다른 스크립트의 Awake 종료 시 호출) - 주로 초기 설정이나 리소스 로딩 등에 사용된다. 1. Update() - 매 프레임마다 실행된다. - 주로 게임 로직, 입력 처리, 에니메이션 업데이트 등에 사용된다. 2. LateUpdate() - 매 프레임마다 Update.. [Algorithm] 탐색 트리 + 항공대학교 이인복 교수님의 알고리즘 해석 및 설계 과목 내용를 정리한 글입니다. 탐색 트리 문제의 정의 집합을 표현하는 자료 구조 - 문제를 풀기 위해서 수학의 집합의 개념을 이용할 수 있다. (집합이란 어떤 답이 '있다', '없다'를 알 수 있어야 한다.) - 집합을 어떻게 표현할 것인가? 집합에 대한 연산 1. membership query => O(n) - 어떤 원소가 집합에 존재하는지를 판별할 수 있는 연산 2. insertion (삽입) => O(1) - 배열 맨 뒤에 삽입 3. deletion (삭제) => O(n) 탐색 트리 레코드 = 개체에 대한 모든 정보를 묶은 저장 단위 ex) 주민등록번호, 이름 키 = 각 레코드를 대표할 수 있는 값 + 정수로 가정한다. (같은 키를 같는 노드는 .. [Kotlin] 인터페이스 + 항공대학교 김철기 교수님의 객체 지향 프로그래밍 과목 내용를 정리한 글입니다. 인터페이스 일종의 추상 클래스로, 추상 클래스보다 제약이 많으나, 여러 개를 상속 받도록 할 수 있는 특수한 개념이다. - 원래 클래스는 하나의 상위 클래스만 상속 받을 수 있다. - 하지만, 인터페이스는 갯수에 제한 없이 상속이 가능하다. - class 대신에 interface라는 예약어로 시작한다. - interface의 멤버는 default가 추상(abstract) 멤버이다. => 즉, 인터페이스는 자격의 의미이다. (상속 받는 클래스에게 자격을 부여한다.) interface Vehicle { // 아래 프로퍼티는 abstract가 붙은 것으로 간주한다. val currentSpeed : Int fun move() f.. [Kotlin] 추상 클래스와 추상 멤버 + 항공대학교 김철기 교수님의 객체 지향 프로그래밍 과목 내용를 정리한 글입니다. 추상 클래스와 추상 멤버 추상 클래스: 직접 인스턴스화 할 수 없고, 다른 클래스의 상위 클래스 역할만 할 수 있는 클래스이다 abstract class Entity(val name: String) class Person(name: String, val age: Int) : Entity(name) fun main() { // val entity = Entity("Unknown") // error val entity: Entity = Person("John", 32) // OK } 추상 클래스의 생성자 추상 클래스의 생성자는 하위 클래스의 위임 호출로만 호출 가능하다. abstract class Entity(val name:.. [Kotlin] 공통 메소드 + 항공대학교 김철기 교수님의 객체 지향 프로그래밍 과목 내용를 정리한 글입니다. Kotlin.Any 클래스 코틀린 클래스 계층 구조의 최상위 클래스이다. 모든 클래스는 Any를 직간접적으로 상속한다. 상위 클래스를 명시하지 않으면 자동으로 Any가 상위 클래스가 된다. Any 클래스의 정의는 다음과 같다. open class Any { public open operator fun equals(other: Any?) public open fun hashCode():Int public open toString(): String } equal() 함수 구조적 동등성 (==, !=)을 정의한다. open class Address(val city: String, val street.. [Kotlin] 타입 검사와 캐스팅 + 항공대학교 김철기 교수님의 객체 지향 프로그래밍 과목 내용를 정리한 글입니다. 컴파일 시간의 타입 검사 컴파일 시, 변수의 타입에 맞추어 연산 검사를 수행한다. fun main() { val objects = arrayOf("1", 2, "3", 4) // Any의 배열이 된다. for(obj in objects) { // obj의 타입: Any println(obj * 2) // any 타입에는 곱하기 연산을 할 수 없으므로 에러 발생 } } is 연산자 is 연산자: is의 왼쪽 타입이 is의 오른쪽에 해당하면 true 반환한다. fun main() { val objects = arrayOf("1", 2, "3", 4) var sum = 0 for(obj in objects) { if (obj i.. 이전 1 2 3 4 5 6 ··· 8 다음