TO-DO LIST - 57-2강 stream 사용하여 컬렉션 우아하게 사용하기 ~ 59-1강 배운 내용 요약 정리 Stream API 대표 중간연산 필터링 filter(): 조건식 통과하는 요소만 남음, distinct(): 중복되는 요소 제거 변화 map(): 특정 함수에 매핑 제한 limit(max): 최대 요소 갯수 지정, skip(): 처음 n개 요소 제외 정렬 sorted(): 요소를 특정 정렬 순서에 따라 생성 Java 입출력과 Stream 이전에 배운 Stream API와는 다른 개념 (이전은 컬렉션의 Stream) Java I/O Stream 입력 스트림: 어떤 대상으로부터 자료를 읽어들일 때 사용하는 스트림을 입력 스트림이라고 한다. 출력 스트림: 파일에 저장할 때는 출력 스..
SuperCoding
TO-DO LIST - 55강 내부클래스와 유틸클래스 ~ 57-1강 stream 사용하여 컬렉션 우아하게 사용하기 배운 내용 요약 정리 Java static 적극 활용 내부 클래스 문법 활용 Java 유틸리티 클래스 만들기 간단하고, 재사용 가능한 메서드를 제공하는 정적인 클래스 내부클래스 만들기 static 여부 & 선언된 위치로 나뉘어짐 일반 중첩클래스 / 정적 중첩클래스 / 지역 중첩클래스 / 익명 중첩클래스 일반 중첩 클래스 vs 정적 중첩 클래스 기존 문제점 해결 기여 Q) 여러 클래스 / 메소드 유사한 건 상속해야만 할까? A) 클래스 하위 클래스 정의 -> 개념적 영역으로 그룹화 서로 차이점 일반 중첩 클래스 = 외부 클래스 인스턴스와 연관 정적 중첩 클래스 = 외부 클래스..
TO-DO LIST - 49강 ~ 배운 내용 요약 정리 Java Exception 직접 던지기 throw new Exception Java Enum 특정 타입이 몇 가지 한정된 값을 가지는 타입 = 열거형 타입 Enum의 각각 요소는 독립된 특수한 클래스로 구분되는 인스턴스이다. - 가독성 향상: Enum 값 명시 -> 표현 직관적 - 안정성 향상: 허용 가능한 값 제한 ordinal, compareTo, values 사용하기 여러 값 연결하여 생성하기 Java에서 NPE(Null Point Exception) 처리 어려움 Java 참조형은 모두 Null로 초기화 null로 된 값 메소드나 필드 참조시 NPE 발생! null 방지 메소드 지원하는 Wrapper 클래스 : 기존 클래스 호..
이번 주 목표 달성 여부 및 다음 주 목표 설정 ㅋ ㅋ 한참 남음 부족한 점 다 부족해 다... 강의나 다 듣자.. 스스로 시도해본 것들 해결 내용 헷갈리거나 실수한 점 회고
TO-DO LIST - 49강 ~ 배운 내용 요약 정리 퍼포먼스가 좋은 코드 버그 / 예외 방어하는 안전한 코드 가독성 / 코드 재사용성 좋은 코드 Java 애플리케이션이 사용하는 대표적인 두 가지 입출력 - 로컬 파일 입출력 - 프로토콜을 사용한 외부 입출력 오류 error: 통제 불가능 실행 컴퓨터 자체 문제 (cpu, memory 등) JVM 기인한 문제 (stack overflow error, virtual machine error, out of memory error 등) 예외 exception: 통제 가능(예외 처리) check exception: 무조건 처리해야 하는 예외 uncheck exception: 무조건 처리하지 않아도 되는 예외 Try-catch문 예외 발생시 s..
TO-DO LIST - 46강 컬렉션 List 만들기 ~ 48강 wrap-up 배운 내용 요약 정리 컬렉션 프레임워크 java.util 패키지 Collection 인터페이스 Map 인터페이스 컴퓨터에게 자료구조란? 자료 구조 = 여러 집들을 특정규칙으로 묶은 동네 Array 구조 / Node 구조 Array 구조 코드 구현 = Object Array 연속적인 메모리 주소 인덱싱 빠름 Node 구조 코드 구현 = Node 클래스 앞 / 뒤 연락처 소지 상대적 느림 데이터 추가 및 삭제 유리함 Array 구조와 Node 구조 장단점 정리 - Array 구조 빠른 인덱스 기반 접근 가능 메모리 공간 효율성 높음 크기 조정이 어려움 데이터 삽입 삭제 비용 높음 - Node 구조 동적 크기 ..
TO-DO LIST - 44-2강 여러 기본 클래스 ~ 45-2강 자바제너릭과 Wrapper 배운 내용 요약 정리 Java String은 불변성을 가진다 str.concat Java StringBuilder / StringBuffer append insert delete long startTime = System.currnetTimeMillis(); // 밀리세컨드 단위 long endTime = System.currnetTimeMillis(); System.out.println("걸린 시간: " + (endTime - startTime)); 자바 클래스 필드: 객체의 데이터가 저장되는 곳 int fieldName; 생성자: 객체 생성 시 초기화 역할 담당 메소드: 객체의 동작에 해당하는 실행..
TO-DO LIST - 41강 JVM 메모리 런타임 ~ 44-1강 여러 기본 클래스 배운 내용 요약 정리 Java 참조형 new로 생성 = JVM Heap 메모리 점유 Player player1 = new Player("player1"); 저장된 공간 주소를 지칭하는 것 -> 아무것도 지칭하지 않으면 null 할당 constant pool stack heap Garbage collector 가비지 컬렉션 대상 판별하기 Reachable: 객체가 참조되고 있는 상태 Unreachable: 객체가 참조되고 있지 않은 상태 가비지 컬렉션 청소방식 Mark - Sweep - Compaction Minor GC: young generation - 새로운 객체들이 할당되는 영역 Major GC: ol..