Web/JAVA 22

[Optional]

NullPointerException Null - 자바에서 제공되는 키워드로 참조형 타입의 기본값으로 사용 됨 null 인 경우 할당되는 메모리가 없다 NullPointException Case -> null 객체의 메소드나 필드 접근, null throw하는 경우 NullPointerException 피하기 하지만 어쩔 수 없이 Null 을 처리해야하는 상황이 오는데 이때 이 Optional을 사용한다 Java.util.Optional Null을 안전하게 사용할 수 있는 기능을 제공 Null이 올 수 있는 가능성이 있는 참조객체를 Wrapping하는 Wrapper 클래스이다 Optional 에는 객체를 다룰 수 있는 다양한 메소드가 있다 filter : predicate 를 사용하여 값이 true 이면..

Web/JAVA 2023.04.19

[effective java] 3판 요약 보면서 (2)

더보기 https://github.com/keesun/study/blob/master/effective-java/item5.md 리소스를 엮을 때는 의존성 주입을 선호하라 public class SpellChecker { private final Lexicon dictionary; public SpellChecker(Lexicon dictionary) { this.dictionary = Objects.requireNonNull(dictionary); } public boolean isValid(String word) { throw new UnsupportedOperationException(); } public List suggestions(String typo) { throw new Unsupporte..

Web/JAVA 2023.04.18

[Functional Interface]

더보기 https://youtu.be/nKBd1fU1cxM 함수형 인터페이스 -> 1개의 추상 메소드를 갖는 인터페이스 2개의 추상 메소드가 있다면 X 단 한개여야만 함 Java 8 버전 이후에는 Default Method 사용할 수 있음 구현된 함수형 인터페이스는 명시적으로 @FunctionalInteface 표시로 요건 검증 가능 인터페이스에는 내부에 로직이 포함되지않은 메소드가 있어야 한다. 보통 직접 만들지는 않고 제공해주는 인터페이스를 사용하게 됨 Predicate Boolean 타입을 리턴하는 인터페이스 boolean test(T t) Consumer 인자를 받고 리턴은 없음 void accept(T t) Supplier https://delightpip.tistory.com/165 [Java..

Web/JAVA 2023.04.18

[자료구조] DFS, BFS

더보기 https://youtu.be/waPwUJu0-lo?list=PLlTylS8uB2fCoXCVtfJ0wzotOU8a3ti6M https://thinkground.studio/%EC%9E%90%EB%A3%8C-%EA%B5%AC%EC%A1%B0-%EB%82%B4%EC%9A%A9-%EC%A0%95%EB%A6%AC-dfs-bfs/ DFS (Depth First Search) 그래프 탐색의 한 종류 깊이 우선 탐색이라고 부름 루트 노드나 임의의 노드에서 시작하여 최대로 진입할 수 있는 깊이까지 탐색한 후 돌아와 다른 노드로 탐색하는 방식 Stack을 사용하여 데이터를 탐색 장점 - 한 노드상의 노드들만 기억하면 되므로 저장공간 수요가 비교적 적음 - 목표 노드가 깊은 단계에 있을 경우 해를 빨리 구할 수 있..

Web/JAVA 2023.04.17

[Java] Super

https://www.baeldung.com/java-super super class는 부모 class에 액세스한다는 의미이다 The super Keyword With Constructors 부모의 기본 cunstructor를 호출한다 public class SuperSub extends SuperBase { public SuperSub(String message) { super(message); } } 이런 코드가 있다면 child class instance에서 new 키워드로 부모 constructor를 먼저 호출하여 String인수를 전달 하는 SuperSub의 생성자를 호출한다 SuperSub child = new SuperSub("message from the child class"); Acce..

Web/JAVA 2023.03.23

[Java] this

https://www.baeldung.com/java-this this 는 method가 호출되는 현재 객체에 대한 참조이다 이 this는 자주 쓰면서도 정확한 개념을 모르는 경우가 많다 Disambiguating Field Shadowing instance 변수와 로컬 매개변수를 구분할때 유용하다 인스턴스 필드와 이름이 같은 생성자 매개변수가 있을 때 매개변수와 구분하기 위해 this를 사용한다 public class KeywordTest { private String name; private int age; public KeywordTest(String name, int age) { this.name = name; this.age = age; } } Referencing Constructors of ..

Web/JAVA 2023.03.22

[IntelliJ Javadocs] Javadocs 문서 만들기

https://www.jetbrains.com/help/idea/working-with-code-documentation.html Javadocs | IntelliJ IDEA www.jetbrains.com 틀린 내용이 있다면 알려주세요 💻 Javadoc는 Java 소스 코드에서 HTML 형식의 Java 코드 문서를 생성하는 도구이다 일반적으로 클래스, 메소드 또는 필드 위에 배치되는 Javadoc 주석으로 구성된다 https://www.oracle.com/technical-resources/articles/java/javadoc-tool.html How to Write Doc Comments for the Javadoc Tool Javadoc Home Page This document describes..

Web/JAVA 2023.03.18
728x90