Java

· Java
목차 개요 스프링 그리고 Java를 사용하다 보면 null 값 핸들링이 무척 중요하다는 사실을 깨닫고 적절한 처리에 대해 고민을 하게 된다. 특히 NullPointerException의 발생 또한 자주 접하게 된다. Java에서는 이러한 문제를 해결하기 위해 Optional 클래스를 도입했다. Optional (Java Platform SE 8 ) A container object which may or may not contain a non-null value. If a value is present, isPresent() will return true and get() will return the value. Additional methods that depend on the presence or a..
· Java
목차 개요 카카오테크캠퍼스 백엔드 과정 강의를 듣다가 HAS-A 관계와 IS-A관계에 관한 내용이 나와서 또 다른 관계는 없을까 라는 생각에 공부해보게 되었다. 객체지향 프로그래밍에서는 클래스 간의 상호작용과 협력을 나타내는 여러 가지 관계가 존재한다. 이 글에서는 이러한 관계들을 알아보고, 코드의 재사용성과 응집도, 그리고 유지 보수성을 높이는 데 도움이 되는 설계 원칙을 소개한다. IS-A 관계 (상속) - 강한 결합 IS-A 관계는 클래스 간의 상속 관계를 의미한다. 하위 클래스가 상위 클래스의 특별한 종류로 간주되며, 상위 클래스의 속성과 메서드를 물려받는다. 이 관계를 통해 코드의 재사용성을 높일 수 있고, 상속 계층을 통해 객체 간의 일반화와 특수화를 구조화할 수 있다. HAS-A 관계 (연관..
· Java
목차 개요 자바에서 문자열을 조작할 때 주로 사용되는 클래스들인 String, StringBuffer, StringBuilder의 차이점과 특성에 대해 알아보자. 이 세 가지 클래스는 각각 다른 상황에서 사용하기 적합하며, 그 중 String 클래스를 사용할 때 오버헤드가 발생하는 이유에 대해 설명하고 StringBuffer와 StringBuilder의 차이를 알아보자. String에서 오버헤드가 발생하는 이유 String 클래스의 특성을 이해할 필요가 있는데 String은 불변(immutable) 객체로, 생성된 후에 변경할 수 없다. 따라서 문자열 조작이 필요한 경우, 항상 새로운 String 객체가 생성된다. 이로 인해 빈번한 문자열 연산이 발생하는 경우, 메모리에 많은 임시 객체가 생성되어 성능에..
· Java
목차 개요 본 포스팅은 클래스 내부에 생성자가 하나라도 선언되지 않았을시에 자바 인터프리터에서 기본 생성자(Default constructor)를 생성해주는 인터프리터 기능에 대한 레퍼런스 자료이다. https://docs.oracle.com/javase/specs/jls/se8/html/jls-8.html#jls-8.8.9 Chapter 8. Classes class Point { int x, y, useCount; Point(int x, int y) { this.x = x; this.y = y; } static final Point origin = new Point(0, 0); } class Test { public static void main(String[] args) { Point p = new..
nstgic3
'Java' 카테고리의 글 목록