컴퓨터 프로그래밍 패러다임 중 하나로, 프로그래밍에서 필요한 데이터를 추상화시켜 상태와 행위를 가진 객체를 만들고 그 객체들 간의 유기적인 상호작용을 통해 로직을 구성하는 프로그래밍 방법입니다.코드 재사용과 유지보수가 쉽습니다. 상속이나 인터페이스 구현을 통해 확장하는
단 1개의 추상 메소드를 갖는 인터페이스를 말합니다. Java 8부터 인터페이스는 기본 구현체를 포함한 default method를 포함할 수 있습니다. 여러 개의 default or static method가 있더라도 추상 메소드가 오직 하나라면 함수형 인터페이스입니
제네릭은 클래스 내부에서 지정하는 것이 아닌 외부에서 사용자에 의해 지정되는 것을 의미합니다. 즉, 특정 타입을 미리 지정하는 것이 아닌 필요에 의해 지정할 수 있도록 하는 일반(Generic) 타입이라는 것입니다.잘못된 타입이 들어올 수 있는 것을 컴파일 단계에서 방
ComparableComparatorref : https://namocom.tistory.com/871둘 다 인터페이스이고 비교에 대한 int 값을 반환한다는 점은 같습니다.왼쪽 인자 < 오른쪽 인자 : 음수왼쪽 인자 = 오른쪽 인자 : 0왼쪽 인자 >
스트림은 데이터 소스를 추상화하고, 데이터를 다루는데 자주 사용되는 메서드들을 정의해 놓았다.Collection이나 Iterator 같은 인터페이스를 이용해서 컬렉션을 다루는 방식을 표준화 했지만, 각 컬렉션 클래스에는 같은 기능의 메서드들이 중복해서 정의되어 있다.L
중복을 허용하면서 저장순서가 유지되는 컬렉션을 구현하는데 사용됩니다. List 인터페이스를 구현한 클래스로 대표적으로 ArrayList와 LinkedList가 있습니다. 이 외에 Vector가 있고 Vector를 구현한 Stack까지 상속 계층도에 있습니다.(추가) v
Set은 쉽게 말해서 집합이라고 보면 됩니다. 기본적으로 Set 혹은 Set 계열을 구현하는 클래스들은 다음과 같은 공통점이 있습니다.중복되는 요소(원소)를 허용하지 않는다.저장 순서를 유지하지 않는다. (LinkedHashSet 만 예외)Set은 크게 HashSet,
키와 값을 하나의 쌍으로 묶어서 저장하는 컬렉션 클래스로 키는 중복될 수 없지만 값은 중복을 허용합니다. 기존에 저장된 데이터와 중복된 키와 값을 저장하면 기존의 값은 없어지고 저장된 값이 남게 됩니다.Map 인터페이스의 내부 인터페이스입니다. Map에 저장되는 key
둘은 모두 기존에 쓰던 scanner와 System.out.println()보다 속도 측면에서 훨씬 빠르기 때문에(입력된 데이터가 바로 전달되지 않고 버퍼를 거쳐 전달되므로 데이터 처리 효율성을 높임)많은 양의 데이터를 처리할 때 유리하다.하지만 그에 비해 Buffer