[Modern Java In Action] 13. 디폴트메서드
이 장에서는 Default Method가 무엇인지, 어떻게 활용하는지 알아본다.
READ ↗TAGGED NOTES
BROWSE THE ARCHIVE
이 장에서는 Default Method가 무엇인지, 어떻게 활용하는지 알아본다.
READ ↗Java 8에서 새로운 날짜, 시간 라이브러리 제공 이유 사람이나 기계가 이해할 수 있는 날짜, 시간 표현 방법 시간의 양 정의하기 날짜 조작, 포매팅, 파싱...
READ ↗모든 자바개발자들이 겪고있는 NullPointerException 에러.. 자바8에서는 이를 해결하기위해 Optional이라는 새로운 선택지를 들고왔다. 어떻게 널포인트익셉션지옥에서 벗어날수있을지 알아보자.
READ ↗도메인 전용 언어 (Domain-Specific Language)
READ ↗“컬렉션 API가 없었다면 자바 개발자의 삶은 많이 외로웠을 것이다”
READ ↗병렬스트림으로 데이터를 병렬처리하는방법을 알아보자!
READ ↗최종연산 collect 를 통해 다양한 방식으로 데이터를 수집하는 연산을 수행할 수 있다. 다양한 collect 활용 방식을 알아보자.
READ ↗다양한 스트림 활용 방법에 대해 알아보자
READ ↗우리는 자바를 사용할때 컬렉션(Collection)으로 데이터를 그룹하하고 처리할 수 있다. 컬렉션으로 질의문(query)을 통해 원하는 데이터를 걸러낼수없을까? 엄청 커다란 컬렉션을 효율적으로 처리하려면 어떻게할수있을까?자바에서는 이와 같은 고민에서...
READ ↗람다 표현식에 대해 알아보자
READ ↗java8부터 지원하는 메서드를 코드에 파라미터로 전달하는 방법에 대해 알아보자
READ ↗java 8부터 자바에 큰 변화들이 있어왔다. 무슨 변화들이 왜, 어떻게 일어났고 우리는 이걸 어떻게 활용해야하는지 알아보자!
READ ↗상태값들을 enum을 통해서 관리하려고하는데 enum 사용의 국룰이 뭔지 명확치 않아 찾아보고 거기서 기본적인 내용만 정제해서 활용해보았다. 활용할때는 java enum을 검색했을때 나오는 아래 블로그들 내용을...
READ ↗스트림 병렬화는 주의해서 사용해야한다
READ ↗시퀀스 리턴시 최고의 리턴 타입은?원소 시퀀스를 반환하는 API를 개발할 일이 생겼다면? 어떤타입을 반환하는 방법이 최선일까? 당연히 컬렉션으로 반환하는것이 최선이다. 왜냐면 스트림으로 처리하기를 원하는 사용자와...
READ ↗스트림은 함수형 프로그래밍에 기초한 패러다임이다. 따라서 그냥 가져다 쓴다는 생각보다는, 이 패러다임 자체를 이해해야한다. (함수형 프로그래밍의 개념에 대해서는 차후 다시 정리. 간단히 말해서는 순수한...
READ ↗java8부터 추가된 Stream API 에 대해 알아보자
READ ↗이번 아이템은 java stream을 잘 사용하는 방법에 대한 내용이다. cf. JAVA Stream API란? 참고.
READ ↗Object이 기본 toString 메서드는 보통 클래스_이름@16진수 해시코드 를 반환함. 그러나 toString 일반규약에 따르면 간결하면서도 사람이 읽기 쉬운 형태의 유익한 정보를 반환해야한다. 또한 모든 하위...
READ ↗equals를 재정의한 클래스 모두에서 hashCode도 재정의해야함. 그렇지않으면 hashCode 일반규약을 어기게되어 HashMap이나 HashSet 의 원소로 사용할때 문제가될수있음.
READ ↗메서드와 생성자 대부분은 입력 매개변수의 값이 특정 조건을 만족하길 바람. (ex. 인덱스값은 음수여서는 안됨. 객체 참조는 null이 아니어야함. 등 ) 이러한 제약은 반드시 문서화해야하며...
READ ↗재정의 하지 않는 경우 각 instance가 본질적으로 고유할때. (ex. Thread, Enum..) 논리적 동치성(logical equality)를 검사할 일이 없을때. 상위 클래스에서 재정의한 equals가 하위 클래스에도 딱...
READ ↗앞에서 배운 상속의 목적은 코드 재사용이 아니다. 상속은 타입계층을 구조화하기 위해 사용해야한다. 상속을 통해 타입 계층을 구조화하여 다형성을 구현하는 방법에 대해 알아보자.
READ ↗상속 : 부모클래스와 자식클래스를 연결해서 부모 클래스의 코드를 재사용. is-a 관계. 의존성이 컴파일 타임에 해결됨. 정적인 관계. 합성 : 전체를 표현하는 객체가 부분을 표현하는...
READ ↗유연한 설계
READ ↗잘 설계된 객체지향 어플리케이션은 작고 응집도높은 객체들로 구성된다. 때문에 객체들간 협력은 필수적이다. 협력하기 위해서는 객체끼리 서로 어떤 기능인지 알고있어야한다. 이런 다른 객체에 대한 지식은...
READ ↗불필요한 정보를 제거하고 현재의 문제 해결에 필요한 핵심만 남기는 작업을 추사오하라고 한다. 큰 문제를 해결 가능한 작은 문제로 나누는 작업을 분해라고 한다.
READ ↗객체지향 애플리케이션의 가장 중요한 재료는 객체들이 주고받는 메시지이다. 즉 추상화한 뒤 public method로 공개하여 협력을 위해 서로 호출하는 기능들이 주인공이라는 뜻이다.
READ ↗책임을 할당할때는 두가지 원칙을 따라야함 데이터보다 행동을 먼저 결정 협력이라는 문맥 안에서 책임을 결정
READ ↗객체지향 설계의 핵심은 역할, 책임, 협력이다. 그 중에서 가장 중요한것은 책임이다. 채임을 어떻게 할당하냐에 따라 객체지향 어플리케이션 전체의 품질을 좌우한다. 훌륭한 설계란 합리적인 비용...
READ ↗객체지향패러다임의 관점에서의 핵심은 역할(role), 책임(responsibility), 협력(collaboration)이다. 객체지향의 본질은 협력하는 객체들의 공동체를 창조하는것 이다. 객체지향 설계의 핵심은 협력을 구성하기 위해 적절한 객체를 찾고 적절한 책임을...
READ ↗내용 추가 예정
READ ↗소프트웨어 분야에서 객체와 설계에 대해 알아보자
READ ↗Generic type이란 데이터 타입을 아직 명시하지 않은 상태. class 안에서 사용하는 데이터 타입을 미리 정의하지 않고 class를 instance화 하는 시점에서 데이터타입을 지정해주는 방식. ex....
READ ↗동기(sync), 비동기(unsync), 블락(block), 논블락(non-block)의 개념에 대해 알아보고,예시를 통해 구체적으로 이해해보자.
READ ↗JVM(Java Virtual Machine)의 메모리 구조를 알아보자.
READ ↗Optional 은 존재할수도 있지만 안할수도있는 객체. 즉 null이 될 수도 있는 객체를 감싸는 Wrapper class이다. 기존 nullable 객체들의 경우 런타임에 NPE(NullPointerException) 예외를 발생시키거나 NPE...
READ ↗Java에서는 데이터를 저장하는 기본적인 자료구조들을 한 곳에 모아 관리하고 편하게 사용하기 위해 Java Collection Framework를 제공한다. 다음은 JCF의 상속 구조이며 사용 용도에 따라 List,...
READ ↗GC (Garbage Collection)이 메모리를 정리하는 과정을 알아보자.
READ ↗java의 String vs StringBuffer vs Stringbuilder 차이는 무엇일까?
READ ↗mutex와 semaphore 차이점mutex와 semaphore는 동기화(syncronize)기법으로 동일 메모리 영역(자원)에 서로 다른 스레드가동시 접근할때 어떤것을 우선할지 접근 스레드의 실행 순서를 지정하는 방법이다. 두 동기화기법이 어떤 차이가...
READ ↗stdout과 log (logger.log)를 저장하는방법이 다르다. 몰랐는데 stdout은 그냥 리다이렉트해도되지만logger.log는 콘솔 출력내용을 파일로 떨구는 처리를 해줘야한다.
READ ↗java 7 Connection reset Error
READ ↗기본클래스 을(를) 찾거나 로드할 수 없습니다
READ ↗