F-Lab 66

[F-Lab 모각코 챌린지 6일차] 자바 예외 처리, Checked Exception, Unchecked Exception

수정일자 2023.5.23 학습 계획 자바 예외 처리 팀코칭 질문으로 학습 TIL 자바 예외 처리 Checked Exception throw throws 절 Unchecked Exception 여러가지 에러 종류 논리 에러 (Semantic error) 파스 에러 (Parse Error) 구문분석 파싱 토큰 체크드 예외(Checked Exception) 이러한 예외는 컴파일러가 컴파일 시점(코드를 실행하기 전에)에 체크합니다. 체크드 예외는 주로 외부 시스템과 상호작용하는 코드에서 발생하는 예외입니다. 예를 들어, 파일 I/O 작업, 데이터베이스 연결 등에서 발생하는 예외입니다. 체크드 예외가 발생할 수 있는 코드를 작성할 때는 반드시 이러한 예외를 처리해야 합니다. 이를 처리하는 방법은 두 가지가 있..

[F-Lab 모각코 챌린지 6일차] 자바 예외 처리, 기타 개념

오늘 학습 계획 자바 예외 처리 TIL 자바 예외 처리 컨텍스트 스위칭 JVM 쓰레드 개념과 OS 쓰레드 자바 예외처리에는 에러를 예측 할 수 있는 경우에 하는 에러 처리법이 있고 이 예측 할 수 있다는 말은 항상 에러가 발생한다는 건 아니고 프로그래밍 상 에러가 발생 할 수 있는 경우라 프로그래머가 예외 처리를 하는 것이 정형화된 경우를 Checked Exceptions이라고 한다. 원시 타입, 레퍼런스 타입의 기본값에는 원시 타입인 경우 리터럴 값이 대체로 초기값으로 사용되고, 레퍼런스 타입의 기본값은 대체로 null이 사용된다. 레퍼런스 타입은 어떤 변수에 메모리 참조 주소를 가지고 있으면 된다. 원시 타입은 자바의 기본 자료형이다. JVM 쓰레드 개념과 OS 쓰레드 개념은 쓰레드라는 단어는 똑같지..

[F-Lab 모각코 챌린지 4일차] 제네릭, 컬렉션

오늘의 학습 목표 제네릭 Java Generic (키워드: 타입 파라미터, wildcard, type erasure, 장/단점, etc) Java Collection (키워드: Set, Map, List, Synchronized*, Concurrent*, etc) Thread Safety (키워드: lock, synchronized, deadlock, ThreadLocal, etc) Static, Final (키워드: 사용이유, 장단점, etc) 제네릭 제네릭 코드 간단한 예시 class MyArray { T element; void setElement(T element) { this.element = element; } T getElement() { return element; } } 위 코드에 대해 ..

[F-Lab 모각코 챌린지 3일차] 함수형 프로그래밍

오늘의 학습 목표 팀코칭에서 나는 뭐라고 답하지 답변하며 학습 자바의 신 2권 chapter 20 읽기 TIL 함수형 프로그래밍 팀코칭을 하다가 함수형 프로그래밍에 대한 개념에 대해 설명해 보라고 해서 알아보다가 정의만 보면 도저히 이해가 되지 않고 예시코드를 보긴 했는데 당장 이해가 되진 않았는데 어디서 본 듯한 꼴이였다. import java.util.Arrays; import java.util.List; import java.util.stream.Collectors; public class FunctionalProgrammingExample { public static void main(String[] args) { List numbers = Arrays.asList(1, 2, 3, 4, 5, 6,..

[F-Lab 모각코 챌린지 2일차] 객체는 무엇이고 객체 지향 프로그래밍은 무엇인가? (4가지 특성)

오늘 학습 계획 자바의 신 2권 19 -21 chapter 읽기 (19장 학습) 코칭팀 ‘나의 대답은?’ 세션 답변하면서 학습 TIL 컴퓨터가 2진법을 사용하는 이유 표현범위에서 양수가 -1표현범위를 갖는 이유 - (2의 보수법의 경우 학습) CPU가 I/O 작업의 요청이 있을때 처리하는 방법 JRE와 JDK의 차이 (자바의 신) 자바 버전 별 변화점 (자바의 신) GC와 JVM부분 복습 (자바의 신) 객체지향 프로그래밍에 관해 학습 진행중 객체란 무엇이며 객체지향 프로그래밍은 무엇인가? 상속 다형성 캡슐화 절차지향적 프로그래밍과 차이점 객체란? 객체는 현실 세계의 사물이나 개념을 프로그래밍에서 사용할 수 있는 데이터와 동작(메소드)을 포함하는 소프트웨어 구성 요소입니다. 객체는 속성(attribute)..

[F-Lab 모각코 챌린지 1일차] 객체지향 프로그래밍, Garbage Collector, JVM 구조

오늘의 목표 객체지향 프로그래밍 JVM 구조 자바 Garbage Collector 동작 과정 객체지향 프로그래밍 캡슐화(Encapsulation): 객체의 속성과 메소드를 하나의 단위로 묶는 것입니다. 이를 통해 객체의 내부 구현을 외부로부터 숨기고, 외부에서는 객체의 메소드만을 사용하여 작업을 수행할 수 있습니다. 상속(Inheritance): 기존 클래스의 속성과 메소드를 새로운 클래스에 물려주는 것입니다. 이를 통해 코드의 재사용성이 증가하고, 중복 코드를 줄일 수 있습니다. 다형성(Polymorphism): 한 가지 인터페이스를 가지고 여러 가지 구현을 사용할 수 있는 기능입니다. 이를 통해 프로그램의 확장성과 유연성이 향상됩니다. 추상화(Abstraction): 복잡한 시스템을 간단한 개념으로 ..