스코프 정의 프로젝트 구조 내에서 변수나 함수, 클래스의 ‘공용 범위’를 제어하는 단위 언어차원에서 변수나 함수, 클래스 같은 ‘멤버’들을 서로 공유하여 사용할 수 있는 범위를 지정해 둔 단위 멤버들의 가용 범위를 지정한다. 의도에 따라 스코프 내부에 변수, 함수, 클래스 배치 가능하다. 지정 ...
오버라이딩과 추상화
오버라이딩 역할 이미 구현이 끝난 함수의 기능을 서브 클래스에서 변경해야 할 때 사용 원칙적으로 서브 클래스에서 수퍼 클래스에 있는 같은 이름과 형태로 된 함수를 선언할 수 없지만 오버라이딩을 통해 이를 가능하도록 해준다. 기본 형태 수퍼 클래스에서 open이 붙은 함수는 서브 클래스에서 override를 붙여 재구현 하면 됨 ...
조건문과 반복문
조건문 if문 설명은 생략 is 연산자 (!is) 자료형이 해당 자료형인지 체크할 때 a is Int: 좌측 변수가 우측 자료형에 호환되는지 여부를 체크하고, 형변환까지 한번에 진행시켜주는 똑똑한 연산자 다중 조건문 When switch문을 좀 더 편리하게 바꾼 기능 하나의 변수를 여러 개의 값과 비교 등호나 부등호...
클래스의 상속
클래스 상속 상속이 필요한 경우 이미 존재하는 클래스를 확장하여 새로운 클래스를 만들 때 여러 개의 클래스들의 공통점을 뽑아 코드 관리를 편하게 해야 할 때 기본 형태 키워드 open 사용 (kotln은 상속 금지가 기본값이므로 open을 선언해야 상속이 가능하다.) open class 슈퍼클래스(속성) {} ...
클래스와 생성자
클래스 기본형태 class 클래스이름(변수) class를 이용하여 객체(인스턴스)를 생성한다. 객체들이 자주 사용하는 공통적인 기능은 클래스 내에 함수로 넣어준다. class Person(var name: String, val birthYear: Int){ fun introduce(...
출력과 입력
Kotlin을 배우면서 알고리즘 문제를 풀어보려고 했는데 기본인 입력 받는 법을 몰라서 너무 당황스러웠다..ㅎㅎ 이번 기회에 입력과 출력에 대해서 공부를 해보도록 하자! 출력 "”안에서 변수를 출력할 때는 $ 를 붙여준다. fun main() { var A: Int = 6 var B: String = "Hello!" ...
함수
함수(function) 기본형태 fun 함수명(변수): return type { return 값 } void일 경우 return type에 Unit 대입 단일 표현식 fun 함수명(변수) = 반환값 add 함수처럼 기능이 하나인 함수를 간단하게 표현하고자 사용 반환형의 추론이 가능해 fun main() { prin...
변수와 자료형
변수 선언 var 일반적으로 통용되는 변수 언제든지 읽기 쓰기가 가능 val 선언시에만 초기화 가능: 중간에 값을 변경할 수 없다. (runtime시 변경되지 않아야 되는 값은 안전하게 val로 선언) fun main() { //정수형 (8진수 지원X) var intValue: Int = 1234 var Lo...