일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 오버라이딩
- 객체타입확인
- 디폴트메소드
- 선택한요소
- jQuery
- 매개변수참조
- 인터페이스
- 정적메소드
- 자바
- 공백 처리
- 상수필드
- 필드의다형성
- createTempFile
- 타깃타입
- 구현클래스
- 자동타입변환
- map에서key와value
- 인스턴스메소드
- ZipInputStream
- java
- 인터페이스의역할
- 람다식
- 요소
- find
- 배열을 문자열
- 상속
- 익명구현객체
- 생성자참조
- 문자열을 배열
- 추상메소드
- Today
- Total
목록java (17)
코드지우개

andThen()과 compose() 디폴트 메소드 디폴트 및 정적 메소드는 추상 메소드가 아니기 때문에 함수적 인터페이스에 선언되어도 여전히 함수적 인터페이스의 성질을 잃지 않는다. 여기서 함수적 인터페이스 성질이란 하나의 추상 메소드를 가지고 있고, 람다식으로 익명 수현 객체를 생성할 수 있는 것을 말한다. Consumer, Function, Operator 종류의 함수적 인터페이스는 andThen()과 compose() 디폴트 메소드를 가지고 있다. 함수적 인터페이스가 가지고 있는 디폴트 메소드이다. 두 개의 함수적 인터페이스를 순차적으로 연결해서 실행한다. 첫 번째 리턴 값을 두 번째 매 개값으로 제공해서 최종 결과값 리턴한다. andThen()과 compose()의 차이점은 어떤 함수적 인터페이..

클래스 멤버와 로컬 변수 사용 람다식의 실행 블록에는 클래스의 멤버(필드와 메소드) 및 로컬 변수(지역변수)를 사용할 수 있다. 클래스의 멤버는 제약 사항 없이 사용 가능하지만, 로컬 변수는 제약 사항이 따른다. 클래스의 멤버 사용 람다식 실행 블록에는 클래스의 멤버인 필드와 메소드를 제약 사항 없이 사용할 수 있다. 하지만 this 키워드를 사용할 때에는 주의가 필요하다. 일반적으로 익명 객체 내부에서 this는 익명 객체의 참조이지만, 람다식에서 this는 내부적으로 생성되는 익명 객체의 참조가 아니라 람다식을 실행한 객체의 참조이다. public interface MyFunctionalInterface { public void method(); } public class UsingThis { pub..

람다식 람다식이란? 메서드를 하나의 "식(expression)"으로 표현한 것이다. 람다식으로 표현하면 메서드의 이름과 반환값이 없어지므로, "익명함수" 라고도 한다. 함수적 프로그래밍에 기법이라고 생각하면 된다. 함수적 프로그래밍 y = f(x) 형태의 함수로 구성된 프로그래밍 기법이다. 데이터를 매개값으로 전달하고 결과를 받는 코드들로 구성되어 있다.함수적 프로그래밍이 객체지향 프로그래밍보다는 효율적인 경우가 있다. 1. 대용량 데이터의 처리 시에 유리 데이터 포장 객체를 생성 후 처리하는 것보다, 데이터를 바로 처리하는 것이 속도에 유리하다. 멀티 코어 CPU에서 데이터를 병렬 처리하고 취합할 때 객체보다는 함수가 유리하다. 2. 이벤트 지향 프로그래밍( 이벤트가 발생하면 핸들러 함수 실행 )에 적..

인터페이스 상속 인터페이스도 다른 인터페이스를 상속할 수 있다. 인터페이스는 클래스와는 달리 다중 상속을 허용한다. public interface 하위인터페이스 extends 상위인터페이스1, 상위인터페이스2{ ... } 하위 인터페이스를 구현하는 클래스는 하위 인터페이스의 메소드뿐만 아니라 상위 인터페이스의 모든 추상 메소드에 대한 실체 메소드를 가지고 있어야 한다. 그렇기 때문에 구현 클래스로부터 객체를 생성하고 나서 하위 및 상위 인터페이스 타입으로 변환이 가능하다. 하위인터페이스 변수 = new 구현클래스(); 상위인터페이스1 변수 = new 구현클래스(); 상위인터페이스2 변수 = new 구현클래스(); 하위 인터페이스로 타입 변환이 되면 상·하위 인터페이스에 선언된 모든 메소드를 사용할 수 있..

다중 인터페이스 구현 객체는 다수의 인터페이스 타입으로 사용할 수 있다. public class 구현클래스명 implements 인터페이스A, 인터페이스B{ //인터페이스 A에 선언된 추상 메소드의 실체 메소드 선언 //인터페이스 B에 선언된 추상 메소드의 실체 메소드 선언 } 인터페이스 A와 인터페이스 B가 객체의 메소드를 호출할 수 있으려면 객체는 이 두 인터페이스를 모두 구현해야 한다. 다중 인터페이스를 구현할 경우, 구현 클래스는 모든 인터페이스의 추상 메소드에 대해 실체 메소드를 작성해야 한다. 만약 하나라도 없으면 추상 클래스로 선언해야 한다. Searchable 인터페이스 public interface Searchable{ void search( String url ); } RemoteCon..