이 글은 자바의 정석을 읽고 개인적으로 공부한 내용을 정리한 글입니다 :> 예외 처리 exception handling 컴파일 에러 : 컴파일 시에 발생하는 에러 런타임 에러 : 실행시에 발생하는 에러 논리적 에러 : 실행은 되지만, 의도와 다르게 동작하는 것 에러 error : 프로그램 코드에 의해서 수습될 수 없는 심각한 오류 예외 exception : 프로그램 코드에 의해서 수습될 수 있는 다소 미약한 오류 - try-catch 문 try { // 예외가 발생한 가능성이 있는 문장들을 넣는다. } catch (Exception1 e1) { // Exception1이 발생했을 경우 실행할 문장을 넣는다. } catch (Exception2 e2) { // Exception1이 발생했을 경우 실행할 문..
문제 > https://www.acmicpc.net/problem/1181 1181번: 단어 정렬 첫째 줄에 단어의 개수 N이 주어진다. (1 ≤ N ≤ 20,000) 둘째 줄부터 N개의 줄에 걸쳐 알파벳 소문자로 이루어진 단어가 한 줄에 하나씩 주어진다. 주어지는 문자열의 길이는 50을 넘지 않는다. www.acmicpc.net 관련 내용 > 2022.01.19 - [뚝딱뚝딱/Java] - [Java] Arrays.sort() 재정의하기 / Comparator 재정의 / 정렬 조건 바꾸기 작성한 코드 > import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Ar..
김영한님의 스프링 입문 강의를 듣다가 JUnit의 assertThat / assertj의 assertThat 가 정확히 무엇이 다른지! 테스트 코드를 작성 할 때에 왜 assertj의 assertThat을 사용한건지! 궁금해져서 공부해보기로 했다 1. JUnit이란? : 자바를 위한 단위 테스트 라이브러리(오픈소스)이다. : 자바 어플리케이션에 대한 단위 테스트를 쉽게 해주는 테스트용 프레임워크라고 이해하자 # 단위 테스트 Unit Test란? : 모든 함수와 메소드에 대한 테스트 케이스를 작성하는 절차 : 소스 코드의 특정 모듈이 의도대로 동작하는지 확인 # JUnit의 assert 메소드들 assertEquals(A, B) : 객체 A와 B가 같은 값을 가지는지 확인한다. assertEquals(A,..
백준 1181 문제를 푸는데 Arrays.sort에 Comparator를 재정의하면 내가 원하는 조건으로 정렬 할 수 있다는 걸 알게되어 한번 정리해보겠다 !! Arrays.sort() 는 기본적으로 2가지 인자를 받는다. Array.sort(arr, new Comparator ) Array.sort(arr) 이런 식으로 인자를 1개만 줄 경우 Comparator은 default값으로 적용되어 실행이 되는 것이다. (정수 정렬할 때는 default값으로 해도 상관없음!) 그러나 문자열을 정렬하기 위해서는 따로 재정의가 필요함 Arrays.sort(arr, new Comparator() { @Override public int compare(String s1, String s2) { if(s1.length..
1. abstract 추상클래스(abstract) : 추상 클래스의 추상 메서드와 그냥 메서드, 멤버필드, 생성자를 정의할 수 있지만 추상메서드의 내용은 정의할 수 없음 : 추상 메서드를 정의하면 추상클래스를 상속받은 클래스에서는 반드시 추상메서드를 override하여 정의해야 함 : 추상 클래스는 extends로 상속받는다 : 다중 상속은 안돼! // 추상 클래스 정의 abstract class [클래스명] // 추상 메서드 정의 [접근제한자] abstract [return 자료형] [메서드 이름] () ❓예제 public class ExamAbstract { public static void main(String [] ar){ Tiger tiger = new Tiger("Hodol"); tiger.c..
java.util.Optional 클래스 : Optional는 null이 올 수 있는 값을 감싸는 Wrapper 클래스 : Optional 인스턴스는 모든 타입의 참조 변수를 저장할 수 있다. 이러한 Optional 객체를 사용하면 예상치 못한 NullPointerException 예외를 제공되는 메소드로 간단히 회피할 수 있다. 즉, 복잡한 조건문 없이도 null값으로 인해 발생하는 예외를 처리할 수 있음. # Optional 객체 생성하기 of() : NPE 예외 발생 가능 ofNullable() : 명시된 값이 null이면 비어있는 Optional 객체 반환 Optional opt = Optional.ofNullable("자바 Optional 객체"); System.out.println(opt.ge..