본문 바로가기
반응형

개발/Java22

Java Method 메서드 구성 [접근지정자] [static] [반환 타입] [메서드명] ( [파라미터 타입] [파라미터명], ...) 접근지정자 - public: 모든 클라이언트가 접근이 가능합니다. - default(private-package): 동일한 패키지 내의 클라이언트만 호출할 수 있습니다. - protected: default + 상속 관계의 클래스에서만 접근 가능 - private: 클래스 내부에서만 접근 가능합니다. static은 선택사항이며 애플리케이션의 기동 시에 메모리에 상주하므로 클래스를 통해 메서드에 접근할 수 있습니다. 메서드 시그니처 [메서드 명] ([파라미터 타입] [파라미터명], ...) 메서드 오버라이딩 부모 타입의 메서드를 재구현하며 메서드의 구성을 그대로 사용합니다. @Override.. 2023. 11. 11.
Java Switch Case 하나의 값을 기준으로 여러 분기를 나눠야 할 때 사용되는 자바 문법입니다. Java의 switch 문은 기본적으로 정수형 데이터 타입 (byte, short, int, long) 및 문자형 데이터 타입 (char)과 Enum 타입에 대해서만 동작합니다 Java의 8, 12, 17 버전에서 Switch Case 문법을 사용하는 방법이 다릅니다. Java 8에서는 switch 문법이 Java의 이전 버전과 크게 다르지 않지만, Java 17에서는 switch 문법에 몇 가지 개선이 있었습니다. 먼저 Java 8에서 기본적인 switch 문법을 보여드리겠습니다. Java 8에서의 기본 switch 문법: int day = 3; String dayName; switch (day) { case 1: dayName.. 2023. 11. 9.
SOLID SOLID 원칙 내가 알고 있는 수준 GPT 답변 Single responsibility principle 클래스는 한 가지 책임만을 가져야 한다. 한 클래스는 하나의 책임만 가져야 한다. 즉, 한 클래스가 변경되는 이유는 한 가지 뿐이어야 한다는 의미입니다. Open-closed principle 수정에는 폐쇄적이고 확장에는 개방적이다. 소프트웨어 요소는 확장에는 열려 있어야 하며, 수정에는 닫혀 있어야 한다. 기존의 코드를 변경하지 않고 기능을 추가하거나 변경할 수 있어야 한다는 의미입니다. Liskov substitution principle 상위 타입을 구현하는 하위 타입끼리는 대체가 자유롭다. 부모 클래스와 자식 클래스 사이의 관계는 일관성이 있어야 한다. 자식 클래스는 그들의 부모 클래스를 대.. 2023. 10. 30.
외부 라이브러리의 thread-safety 확인하는 방법 Thread-Unsafe한 객체의 특징은 아래와 같습니다. - get/set method가 있어 멀티 스레드 환경에서 접근이 가능하며, 수정이 가능한(Mutable) 데이터를 가지는 객체 그렇다면 외부 라이브러리를 사용할 때 쓰이는 객체가 쓰레드 세이프한지 확인하는 방법은 무엇일까요? - 해당 라이브러리의 API 문서를 확인합니다. ex) HashMap의 경우 문서에 아래와 같이 표시가 되어있습니다. Note that this implementation is not synchronized. ConcurrentHashMap의 경우는 아래의 내용이 포함되어 있습니다. However, even though all operations are thread-safe, retrieval operations do no.. 2022. 3. 24.
반응형