일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 동적계획법
- 기본자료구조
- 선형자료구조
- 간단한 완전탐색
- 깊이우선탐색
- Stack
- parametric search
- 정렬
- Queue
- Sort
- binary search
- hint
- Simple Brute-Force Algorithm
- 큐
- 고급정렬
- basic data-structure
- 내돈후기
- Divide and Conquer
- 힙
- 이진탐색
- dfs
- 스택
- 우선순위 큐
- Advanced Sort
- 알고리즘잡스
- 완전탐색
- 개념
- 매개 변수 탐색
- heap
- Adv. recursive function
- Today
- Total
목록스터디/이펙티브 자바 (20)
루시와 프로그래밍 이야기
재정의하지 않는 경우 각 인스턴스가 본질적으로 고유하다. 클래스는 값 표현x 동작하는 개체를 표현 (ex. Thread) 인스턴스의 '논리적 동치성(logical equality)'을 검사할 일이 없다. 상위 클래스에서 재정의한 equals가 하위 클래스에도 딱 들어맞는다. 클래스가 private이거나 package-private이고 equals 메서드를 호출할 일이 없다. 위험 회피 스타일 / 실수로라도 호출되는 것이 싫다면 다음과 같이 구현하자 @Override public boolean equals(Object o){ throw new AsserionError(); //호출금지! } Q. 언제 equals를 재정의해야 할까? A. 논리적 동치성을 확인해야할 때, 상위 클래스의 equals가 논리적 ..
보호되어 있는 글입니다.
보호되어 있는 글입니다.
아주 핵심적인 기본 원칙 : 명료성 / 단순성 컴포넌트는 사용자를 놀라게 하는 동작을 해서는 절대 안된다 정해진 동작이나 예측할 수 있는 동작만 수행해야한다 컴포넌트란? 모든 소프트웨어 요소를 뜻한다 코드는 복사되는 게 아니라 재사용되어야 한다 컴포넌트 사이의 의존성은 최소로 유지해야 한다 오류는 만들어지자마자 가능한 한 빨리 잡아야 한다 자바가 지원하는 타입 : 인터페이스, 클래스, 배열, 기본타입 (*참조타입) annotation은 인터페이스의 일종이며, enum은 클래스의 일종이다 클래스의 인스턴스 & 배열 = 객체(Object) / 기본타입은 x 클래스의 멤버 = 필드, 메서드, 멤버 클래스, 멤버 인스턴스 메서드 시그니처 = 메서드 이름+입력 매게변수(parameter)의 타입 (※반환값의 타입..