[Java] 디폴트 메서드(Default Method) 란?
·
자바/개념
인터페이스를 구현하는 클래스에서는 메서드를 모두 구현해야하기 때문에 인터페이스에 메서드를 추가할때 문제가 발생한다. 메서드 하나를 추가하려면 해당 인터페이스를 구현하는 모든 클래스에서는 해당 메서드를 모두 구현해줘야 하는 것이다. Java8에서는 이러한 문제를 해결하기 위해 2가지 방법을 제공한다. 1.인터페이스 내부에 정적 메서드(static method)를 사용한다.(인스턴스 생성하지 않고 사용 ex) Math.abs ..) 2.인터페이스의 기본 구현을 제공할 수 있도록 디폴트 메서드(default method) 기능을 사용한다. 인터페이스에 default 메서드를 사용하여 메서드를 구현할 수 있다. default 메서드를 이용하면 인터페이스의 기존 구현을 그대로 상속하므로 인터페이스에 자유롭게 새로..
[Java] 함수형 인터페이스(Functional Interface) 란?
·
자바/개념
1) 개념함수형 인터페이스란 1 개의 추상 메소드를 갖는 인터페이스를 말한다.Java8 부터 인터페이스는 기본 구현체를 포함한 디폴트 메서드 (default method) , 정적 메서드(Static method) 를 포함할 수 있으며 여러 개의 디폴트 메서드가 있더라도 추상 메서드가 오직 하나라면 함수형 인터페이스다.자바의 람다 표현식은 함수형 인터페이스로만 사용 가능하다. 2) 함수형 인터페이스 만들기@FunctionalInterfacepublic interface functionalTest { void test(); static void firstTest(){ System.out.println("firstTest"); } default void secondT..
컴파일(compile)와 인터프리터(interpreter)는 무엇일까?
·
자바/개념
컴파일 컴파일 특징컴파일 프로그램을 이용하여 컴파일한다.실행 파일이 만들어진다.실행 파일을 실행시킨다.속도가 빠르다.C++, C, 자바 등이 있다.A 운영체제에서 만든 프로그램을 B 운영처제에서 돌릴 경우, 돌아가지 않을 가능성이 아주 크다(ex int값이 달라지는 경우)모든 코드를 한번에 번역(컴파일)하고, 한번에 실행한다. 그래서 번역과 실행이 따로 이루어진다.컴파일 장점초기 스캔은 오래걸리지만, 한번 스캔을 마치면 실행파일을 만들어 놓고 계속 사용하기 때문에 실행속도는 인터프리터보다 빠르다.컴파일러는 오류 메시지를 생성할때 전체 코드를 검사한 후에 오류 메시지를 생성한다. 그래서 프로그램 실행 전에 오류를 발견 할 수 있다.컴파일 단점프로그램을 실행하는데 필요한 모든 파일을 스캔하기 때문에 초기 스..
JIT(JUST IN TIME) 란?
·
자바/개념
자바는 .java 파일을 컴파일 하여 .class의 바이트코드를 만든다. JVM은 바이트코드를 JIT, 인터프리터 방식을 통해 바이트 코드를 네이티브 코드로 변경해서 운영체제에게 넘겨 코드를 실행시킨다.개념 JIT 컴파일(just-in-time compilation) 또는 동적 번역(dynamic translation)은 프로그램을 실제 실행하는 시점에 기계어로 번역하는 컴파일 기법이다. 전통적인 입장에서 컴퓨터 프로그램을 만드는 방법은 두 가지가 있는데, 인터프리트 방식과 정적 컴파일 방식으로 나눌 수 있다. 이 중 인터프리트 방식은 실행 중 프로그래밍 언어를 읽어가면서 해당 기능에 대응하는 기계어 코드를 실행하며, 반면 정적 컴파일은 실행하기 전에 프로그램 코드를 기계어로 번역한다. JIT 컴파일러는..
Call by Value, Call by Reference 란?
·
자바/개념
Call by Value 값에 의한 호출 기본 자료형에 적용 변수에 값 자체를 저장 변수를 복사하면 변수의 값 자체를 복사(stack 메모리) 원시타입(primitive type) int, double, char 등 기본 자료형이 속함 파라미터로 값을 던져주고 값이 변경이 되어도 변수의 값을 복사해서 던져 주기 때문에 원본 데이터에는 아무런 지장이 가지 않는다. Call by Reference 참조 값에 의한 호출 배열이나 객체를 참조 변수에는 값이 아니라 객체의 주소 값(참조)이 저장 변수를 복사하면 주소가 복사되어 하나의 객체를 참조하게 됨 참조타입(reference type) String, 배열, 객체 등 원시타입을 제외한 타입을 말함 객체를 메서드의 파라미터로 사용할 경우 값을 전달하는게 아닌 참..
대전집주인
'자바/개념' 카테고리의 글 목록