자바의정석 1.5 와일드 카드 ~ 1.8 지네릭 타입의 제거 그래서 오버로딩 개념이 아니라, 메서드 중복 정의가 되기 때문에 <> 사이에 T,E,K,V 이것은 다 같은 동작을 하고 네이밍은 관습 ex) E는 List, ArrayList 와 같은 컬렉션을 사용할때 사용한다. E 엘리먼트 ( List: 엘리먼트 목록) K 열쇠입니다 (에서 Map<K,V>) 하지만 '?'만으로는 Obj와 다를게 없으므로 extents와 super 사용 extends T>'... 자바의정석자바의정석 Chapter 12 지네릭스, 열거형, 애너테이션 / 1. 지네릭스(Generics) 클래스에 선언하는 지네릭 타입 지네릭이 도입되기 이전의 코드와 호환을 위해, 지네릭 클래스인데도 예전의 방식으로 객체를 생성하는 것이 허용 타입 변수 T에 Object타입을 지정하면, 타입을 지정하지 않은 것이 아니라 알고 적은 것이므로 경고는 발생하지 않는다. 지네릭스가 도입되기 이전의 코드와 호환성을 유지하기 위해서 지네릭스를 사용하지 않은 코드를 허용하는 것일 뿐, 앞으로 지네릭 클래스... 자바의정석자바의정석 객체지향 프로그래밍 1 (4-6) 생성자는 인스턴스가 생성될 때 호출되는 '인스턴스 초기화 메서드' 이다. 컴파일 할 때, 소스파일의 클래스에 생성자가 하나도 없다면 컴파일러가 자동으로 클래스이름() {} 형태의 기본 생성자를 추가하여 컴파일 한다. 같은 클래스의 멤버들 간에 서로 호출할 수 있는 것처럼 생성자 간에도 서로 호출이 가능하다. 생성자를 첫 줄에서만 호출 가능한 이유는 생성자 내에서 초기화 작업 도중 다른 생성자... 자바의정석자바의정석 람다와 스트림 람다식은 간단히 말해서 메서드를 하나의 식으로 표현한 것이다. 람다식은 함수를 간략하면서도 명확한 식으로 표현할 수 있게 해준다. 메서드를 람다식으로 표현하면 메서드의 이름과 반환값이 없어지므로, 모든 메서드는 클래스에 포함되어야 하므로 클래스도 새로 만들어야 하고, 객체도 생성해야하만 비로소 이 메서드를 호출할 수 있다. 그러나 람다식은 이 과정을 람다식 자체만으로도 이 메서드의 역할을 대... 자바의정석자바의정석 [자바의정석]Java - Thread(쓰레드) #014 모든 프로세스는 최소한 하나의 쓰레드를 가지고 있다 프로세스,쓰레드 프로세스,쓰레드 장단점 쓰레드의 실행 start() 쓰레드를 생성한 후에 start를 호출해야 쓰레드가 작업을 시작한다 실행 중인 사용자 쓰레드가 하나도 없을 때 프로그램은 종료 된다 쓰레드의 I/O블락킹' 멀티 쓰레드의 경우 사용자로부터 입력을 기다리는 구간 다른 쓰레드의 작업이 수행될 수 있다 쓰레드의 우선순위 작업의 중... Java자바의정석Java [자바의정석]Java - 람다&스트림 #015 람다식 함수는 일반적 용어, 메서드는 객체지향개념 용어 함수는 클래스에 독립적, 메서드는 클래스에 종속적이다 3.매개변수의 타입이 추론 가능하면 생략가능 (대부분의 경우 생략가능) 1.매개변수가 하나인 경우, 괄호() 생략가능(타입이 없을 때만) 람다식(익명객체)를 다루기 위한 참조변수가 필요 참조변수의 타입은? 함수형 인터페이스 함수형 인터페이스 타입의 참조변수로 람다식을 참조할 수 있음 ... Java자바의정석Java [자바의정석]Java - 람다&스트림(2) #016 스트림의 연산 Stream< T > limit(long maxSize) : 스트림의 일부를 잘라낸다 Stream< T > skip(long n) : 스트림의 일부를 건너 뛴다 Stream< T > peek(Consumer< T > action): 스트림의 요소에 작업수행 Stream< T > sorted(),(Comparator< T > comparator): 스트림의 요소를 정렬 Strea... Java자바의정석Java
1.5 와일드 카드 ~ 1.8 지네릭 타입의 제거 그래서 오버로딩 개념이 아니라, 메서드 중복 정의가 되기 때문에 <> 사이에 T,E,K,V 이것은 다 같은 동작을 하고 네이밍은 관습 ex) E는 List, ArrayList 와 같은 컬렉션을 사용할때 사용한다. E 엘리먼트 ( List: 엘리먼트 목록) K 열쇠입니다 (에서 Map<K,V>) 하지만 '?'만으로는 Obj와 다를게 없으므로 extents와 super 사용 extends T>'... 자바의정석자바의정석 Chapter 12 지네릭스, 열거형, 애너테이션 / 1. 지네릭스(Generics) 클래스에 선언하는 지네릭 타입 지네릭이 도입되기 이전의 코드와 호환을 위해, 지네릭 클래스인데도 예전의 방식으로 객체를 생성하는 것이 허용 타입 변수 T에 Object타입을 지정하면, 타입을 지정하지 않은 것이 아니라 알고 적은 것이므로 경고는 발생하지 않는다. 지네릭스가 도입되기 이전의 코드와 호환성을 유지하기 위해서 지네릭스를 사용하지 않은 코드를 허용하는 것일 뿐, 앞으로 지네릭 클래스... 자바의정석자바의정석 객체지향 프로그래밍 1 (4-6) 생성자는 인스턴스가 생성될 때 호출되는 '인스턴스 초기화 메서드' 이다. 컴파일 할 때, 소스파일의 클래스에 생성자가 하나도 없다면 컴파일러가 자동으로 클래스이름() {} 형태의 기본 생성자를 추가하여 컴파일 한다. 같은 클래스의 멤버들 간에 서로 호출할 수 있는 것처럼 생성자 간에도 서로 호출이 가능하다. 생성자를 첫 줄에서만 호출 가능한 이유는 생성자 내에서 초기화 작업 도중 다른 생성자... 자바의정석자바의정석 람다와 스트림 람다식은 간단히 말해서 메서드를 하나의 식으로 표현한 것이다. 람다식은 함수를 간략하면서도 명확한 식으로 표현할 수 있게 해준다. 메서드를 람다식으로 표현하면 메서드의 이름과 반환값이 없어지므로, 모든 메서드는 클래스에 포함되어야 하므로 클래스도 새로 만들어야 하고, 객체도 생성해야하만 비로소 이 메서드를 호출할 수 있다. 그러나 람다식은 이 과정을 람다식 자체만으로도 이 메서드의 역할을 대... 자바의정석자바의정석 [자바의정석]Java - Thread(쓰레드) #014 모든 프로세스는 최소한 하나의 쓰레드를 가지고 있다 프로세스,쓰레드 프로세스,쓰레드 장단점 쓰레드의 실행 start() 쓰레드를 생성한 후에 start를 호출해야 쓰레드가 작업을 시작한다 실행 중인 사용자 쓰레드가 하나도 없을 때 프로그램은 종료 된다 쓰레드의 I/O블락킹' 멀티 쓰레드의 경우 사용자로부터 입력을 기다리는 구간 다른 쓰레드의 작업이 수행될 수 있다 쓰레드의 우선순위 작업의 중... Java자바의정석Java [자바의정석]Java - 람다&스트림 #015 람다식 함수는 일반적 용어, 메서드는 객체지향개념 용어 함수는 클래스에 독립적, 메서드는 클래스에 종속적이다 3.매개변수의 타입이 추론 가능하면 생략가능 (대부분의 경우 생략가능) 1.매개변수가 하나인 경우, 괄호() 생략가능(타입이 없을 때만) 람다식(익명객체)를 다루기 위한 참조변수가 필요 참조변수의 타입은? 함수형 인터페이스 함수형 인터페이스 타입의 참조변수로 람다식을 참조할 수 있음 ... Java자바의정석Java [자바의정석]Java - 람다&스트림(2) #016 스트림의 연산 Stream< T > limit(long maxSize) : 스트림의 일부를 잘라낸다 Stream< T > skip(long n) : 스트림의 일부를 건너 뛴다 Stream< T > peek(Consumer< T > action): 스트림의 요소에 작업수행 Stream< T > sorted(),(Comparator< T > comparator): 스트림의 요소를 정렬 Strea... Java자바의정석Java