Home
SmartNote
Cancel

다양한 함수적 기능

다양한 함수 기능 Overloading 같은 스코프 내에서 같은 이름의 함수를 여러개 만들 수 있는 기능으로, 이 때 parameter는 달라야 한다. 즉, 이름이 같더라도 parameter 개수가 다르거나 자료형이 다르면 서로 다른 함수로 동작 가능 fun read(x: Int){ println("숫자 $x 입니다.") } fu...

클래스의 다형성

다형성 정의 클래스의 상속관계에서 오는 인스턴스의 호환성을 적극 활용할 수 있는 기능 수퍼클래스가 같은 인스턴스를 한 번에 관리하거나 인터페이스를 구현하여 사용하는 코드에서도 이용 종류 up-casting 서브 클래스를 상위 자료형인 수퍼클래스로 변환 down-casting ...

리스트

List(리스트) 정의 데이터를 모아 관리하는 Collection 클래스를 상속받는 서브 클래스 중 하나 Collection 클래스 상속받는 서브 클래스 class List class Set class Map ...

제네릭

Generic(제네릭) 정의 클래스나 함수에서 사용하는 자료형을 외부에서 지정할 수 있는 기능 함수나 클래스를 선언할 때 고정적인 자료형 대신 실제 자료형으로 대체되는 type parameter를 받아 사용 사용방법 type parameter의 이름은 ****로 사용 여러 개이면 &...

옵저버

Observer (옵저버) 정의 이벤트가 일어나는 것을 감시하는 감시자의 역할을 만드는 것 이벤트: 키의 입력, 터치의 발생, 데이터의 수신 등 함수로 직접 요청하지는 않았지만 시스템 또는 루틴에 의해서 발생하게 되는 동작들 옵저버 패턴: 이벤트가 발생할 때마다 ‘즉각적으로 처리’할 수 있도록 만드는 프로그래...

오브젝트

Object (오브젝트) 정의 생성자 없이 객체를 직접 만들어내는 것 (인스턴스를 생성하지 않고 그 자체로 객체이다.) 공통적인 속성과 함수를 사용해야하는 코드에서는 굳이 class를 쓸 필요없이 object 사용 사용법 object 이름에 참조 연산자를 붙여 사용 object 이름.메소드 obj...

스코프 함수

스코프 함수 정의 함수형 언어의 특징을 좀 더 편리하게 사용할 수 있도록 기본 제공하는 함수들 종류 (5가지) 1. apply 인스턴스를 생성한 후 변수에 담기 전에 ‘초기화 과정’을 수행할 때 많이 사용 class Book(var name: String, var price: Int){ fun discount(...

고차함수와 람다함수

고차함수 정의 함수를 마치 클래스에서 만들어 낸 ‘인스턴스처럼’ 취급하는 방법 함수를 ‘parameter’로 넘겨 줄 수 있고, ‘결과값으로 반환’ 받을 수도 있다. 사용 방법 :: 사용 - ::는 일반 함수를 고차 함수로 변경해 주는 연산자 밑의 코드는 함수 a를 고차함수 형식의 parameter...