1 life 2 live

스파크(스칼라)를 이용한 빅데이터 (4) - 스칼라 함수 [20.8.15] 본문

빅데이터

스파크(스칼라)를 이용한 빅데이터 (4) - 스칼라 함수 [20.8.15]

대희투 2020. 8. 15. 18:02

○ 람다 함수 : [_] 언더바를 활용하여 파라미터 지정 가능, [_]의 위치에 따라 파라미터 선택

exec함수 : 두개의 Int 파라미터를 받고, Int를 반환하는 고차함수 f와 Int형 파라미터 x,y를 입력받아서 f함수를 호출하면서 파라미터로 x, y 를 전달하는 함수

 

○ 커링 : 여러 개의 인수 목록을 여러 개의 괄호로 정의 가능, 함수를 정해진 인수의 수보다 적은 인수로 호출하면 리턴 값은 나머지 인수를 받는 함수

 

○ 클로저 : 내부에 참조되는 모든 인수에 대한 묵시적 바인디을 지닌 함수, 자신이 참조하는 문맥을 포함

지연 실행의 좋은 예, 클로저 블록에 코드를 바인딩함으로써 그 블록의 실행을 나중으로 연기할 수  있음.

 

○ 타입 : 클래스와 함수를 생성 가능

 

○ 클래스 : class를 이용하여 생성, 멤버 변수 선언 및 생략 가능

 

○ 클래스 멤버 변수 : 가변 변수와 불변 변수를 명시적으로 선언 가능

가변 변수(var) : 컴파일러가 클래스 내부에 자동으로 getter, setter 메소드 생성, 읽기 쓰기 가능

불변 변수(val) : 컴파일러가 getter만 생성, 읽기만 가능

 

가변 변수, 불변 변수로 선언되지 않은 변수는 getter, setter 가 생성x, 클래스 내부에서만 사용 가능

 

○ 클래스 멤버 변수의 기본 값 : 변수의 종류에 상관없이 기본 값 입력 가능

 

○ 클래스의 메소드 : def로 선언

 

○ 클래스 메소드 오버라이드 : override 선언자 사용, new를 이용하여 메소드 재정의 가능

 

○ 생성자 : 스칼라는 생성자가 따로 없음, 클래스 바디부분에 로직 생성

 

○ 상속 : extends 이용, 일반, 추상 클래스 상속 가능

 

○ 추상클래스 : abstrcat 이용, 매개변수 가질 수 있음

 

○ 봉인 클래스 : 하위 타입이 한 파일에 같이 있어야함, sealed를 이용하고 트레잇 봉인 가능

 

 

 

모든 글의 출처는 https://wikidocs.net/ 입니다.

728x90
반응형
Comments