CLASS 7

Kotlin - Class와 Inheritance(상속)

ClassKotlin은 Java와 마찬가지로 class 를 가지고 있고, class keyword를 통해 선언한다. class Study { ... } class는 class name, header, body로 구성되어 있고, 중괄호 {} 로 둘러 쌓여있다. 단, 만약 optional인 header와 body 중 body가 없을 경우 중괄호 {} 를 다음과 같이 생략해도 된다. class Study 생성자(Constructors) Kotlin의 class는 primary constructor, secondary constructor를 가질 수 있고, primary constructor는 최대 하나, secondary constructor는 복수개로 가질 수 있다. Primary constructor 먼저..

Language/Kotlin 2018.07.25

Kotlin - Packages

Kotlin은 Java와 마찬가지로 Package 개념을 사용한다. Java에서 그러하듯이 Kotlin에서도 source 파일은 package 선언으로 시작한다. 이에 따라 source 파일 내 class나 function들과 같은 contents들은 package 를 통해 표현이 가능한데, 예를 들어 아래의 baz() 는 foo.bar.baz로, Goo 는 foo.bar.Goo 로 표현이 가능하다. package foo.bar fun baz() {} class Goo {} Package가 명시되지 않았다면 해당 파일의 content들은 이름이 없는 "default" package에 포함되었다고 보면 된다. Default Imports많은 수의 package들이 기본으로 모든 kotlin 파일에 impo..

Language/Kotlin 2018.07.16

Python - int(), 정수(integer)를 반환하는 클래스

int >>> int(x=0)>>> int(x, base=10) 전달한 숫자 혹은 문자열, x를 기반으로 정수 값을 돌려준다.만약 인자가 없다면 기본 값 0을 돌려준다. 인자가 숫자일 경우, plain integer, long integer, floating point number가 입력될 수 있다. plain integer의 경우 int 형으로 반환하고, long integer의 경우 long 형으로 반환한다. (참고> plain integer와 long integer 범위)반면 floating point number의 경우는 소수점 이하는 버리고 int 혹은 long 형으로 반환한다. 인자가 앞서 언급한 숫자형이 아니거나 base(진법) 인자가 같이 넘어올 경우 문자열이나 unicode object가..

Language/Python 2018.01.04

Python - slice(), slicing하기 원하는 index를 정의하는 클래스

slice >>> slice(stop) >>> slice(start, stop[, step]) 잘라내기 원하는 index 들을 정의하는 클래스이다. slice object에 대해 한마디로 표현하기가 쉽지 않다. 원활한 이해를 위해 예를 들면 다음과 같다. 먼저, sample = "abcdefghijklmn" 이라는 문자열이 있다고 하자. 이 중 sample[2] 부터 sample[5] 전 까지의 문자열만 빼내고 싶다면 어떻게 하면 될까? (즉, index 2부터 4까지 표시한다.) >>> sample = "abcdefghijklmn" >>> sample[2:5] 'cde' 위와 같이 colon (:) 을 이용하여 추출해 내면 된다. [Slice Notation ":" 을 이용한 나누기] >>> a = "..

Language/Python 2018.01.04

Python - xrange(), 순차적인 숫자를 만들 수 있는 generator를 생성하는 클래스

xrange >>> xrange(stop) >>> xrange(start, stop[, step]) 전달받은 인자를 바탕으로 순차적인 숫자를 만들 수 있는 generator를 생성한다. 기본적인 사용법은 [range 함수] 와 동일하다. 하지만 range 함수는 미리 숫자를 생성하여 list 형태로 메모리에 미리 올려 놓는 반면 xrange 함수는 실제로 사용을 요청받았을 때 숫자를 생성한다. range 함수와는 다르게 불필요하게 메모리에 생성하지 않는다는 장점이 있다. xrange 함수가 리턴하는 형태는 xrange type이다. xrange type은 immutable sequence 로 일반적으로 반복문에 사용된다. xrange type의 장점은 range와는 상관없이 xrange object 자체..

Language/Python 2018.01.03

Python - complex(), 복소수(complex)를 반환하는 클래스

complex >>> complex([real[,imag]]) real, imag 값을 전달하면 해당 복소수를 반환하거나 문자열 혹은 숫자를 복소수로 변환한다. __builtin__ module에 포함된 class 이다. 예제) real, imag 값을 정수(int)/실수(float)로 전달하는 경우 >>> complex(1,1) (1+1j) >>> complex(1.1,2.2) (1.1+2.2j) imag 값이 생략되는 경우>>> complex(1) (1+0j) 두 인자 모두 생략되는 경우 >>> complex() 0j 첫번째 인자를 문자열로 전달하는 경우 (두번째 인자는 없음) >>> complex("1+1j") (1+1j) complex는 일반 function이 아니고 class 이다. 따라서 해당..

Language/Python 2017.12.29

Python - bool(), 조건에 맞는 boolean 값을 반환하는 클래스

bool >>> bool(x) 전달한 조건 혹은 숫자를 기반으로 boolean(True/False) 값을 돌려준다. __builtin__ module에 포함된 class 로 class int의 subclass 이다. 예제) 조건(condition)을 입력하였을 경우 >>> bool(1>> bool(1>2) False 숫자(number)를 입력하였을 경우 >>> bool(1) True >>> bool(0) False bool은 일반 function이 아니고 class 이다. 따라서 해당 class에 포함된 다양한 method 사용이 가능하다. string 변환 method 사용의 예) >>> bool(0).__str__() 'False' >>> help(bool) Help on class bool in m..

Language/Python 2017.12.29