| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 |
- Effective Java
- spring boot
- 스프링 배치
- 추상클래스
- 빌더 패턴
- 로드밸런서
- 김영한
- 스프링
- GoF 23
- lv1
- 성능 개선
- 디자인 패턴
- Spring Batch
- 자바
- Til
- java
- 계산기
- Spring
- DB
- 토스
- 템플릿 메서드 패턴
- 트러블슈팅
- 이펙티브 자바
- redis
- 프록시 패턴
- 코드카타
- 백엔드
- 배치
- 스케줄러
- 프로그래머스
- Today
- Total
목록java (7)
김코딩
빌더(Builder)란?빌더(Builder)는 복잡한 객체를 단계별로 생성할 수 있게 해주는 생성패턴이다. 처리하기 어려운 많은 매개변수를 가진 객체를 깔끔하고 안전하게 만들 수 있도록 도와준다.// 일반적인 생성자 방식Person person = new Person("김철수", 30, "서울", "010-1234-5678", "kim@email.com", true, false);// 빌더 방식 Person person = Person.builder() .name("김철수") .age(30) .address("서울") .phoneNumber("010-1234-5678") .email("kim@email.com") .isMarried(true) .hasChildren..
정적 팩터리 메서드란?객체 생성을 담당하는 정적(static) 메서드이다. 생성자 대신 또는 생성자와 함께 객체를 생성하는 방법을 제공한다.public class Person { private String name; private int age; // private 생성자 (직접 생성 방지) private Person(String name, int age) { this.name = name; this.age = age; } // 정적 팩터리 메서드들 public static Person newBaby(String name) { return new Person(name, 0); } public sta..
스프링을 공부하다 보면 의존성 주입(Dependency Injection, DI) 이나 제어의 역전(Inversion of Control, IoC) 같은 용어를 자주 마주하게 됩니다. 처음 들었을 땐 생소하게 느껴질 수 있지만, 객체지향 프로그래밍과 스프링을 이해하는 데 있어 꼭 짚고 넘어가야 할 핵심 개념입니다.오늘은 이 중에서 의존성 주입(DI) 에 대해 정리해보았습니다.의존성(Dependency)이란?의존성(Dependency) 이란, 어떤 객체가 자신의 기능을 수행하기 위해 다른 객체에 의존하는 관계를 의미합니다. public class PaymentService { public void pay() { System.out.println("결제를 진행합니다."); }}publ..
이번에는 추상클래스와 인터페이스의 차이점에 대해 이야기해보겠습니다.추상클래스의 주요 특징객체를 직접 생성할 수 없습니다.new 키워드로 인스턴스를 만들면 컴파일 에러가 발생합니다.추상 메서드를 포함할 수 있으며,추상클래스를 상속받은 자식 클래스는 이 추상 메서드를 반드시 오버라이딩해야 합니다.모든 메서드가 추상 메서드로만 구성된 클래스를순수 추상 클래스(Pure Abstract Class) 라고 하며,이 구조는 인터페이스와 매우 유사한 형태입니다.인터페이스란? 인터페이스(Interface)는기능의 설계서 또는 규칙의 집합이라고 할 수 있습니다.클래스에게"이 기능을 꼭 구현해!"라고 강제하는계약서 같은 존재입니다. 인터페이스 선언public interface 인터페이스명 { //public 상수 필드..
추상클래스를 이해하기 전에, 우선 다형성이 어떻게 쓰이는지 간단한 예시부터 살펴보겠습니다.다형성 활용 Animalpublic class Animal { public void sound() { System.out.println("동물 울음 소리"); }}Dogpublic class Dog extends Animal { public void sound() { System.out.println("멍멍"); }} Catpublic class Cat extends Animal { public void sound() { System.out.println("냐옹"); }} Cowpublic class Cow extends Animal { pu..
오늘은 Lv. 2 계산기를 구현해보았습니다.오늘의 요구사항은 이렇습니다.Lv 2. 클래스를 적용해 기본적인 연산을 수행할 수 있는 계산기 만들기사칙연산을 수행 후, 결과값 반환 메서드 구현 & 연산 결과를 저장하는 컬렉션 타입 필드를 가진 Calculator 클래스를 생성사칙연산을 수행한 후, 결과값을 반환하는 메서드 구현연산 결과를 저장하는 컬렉션 타입 필드를 가진 Calculator 클래스를 생성1) 양의 정수 2개(0 포함)와 연산 기호를 매개변수로 받아 사칙연산(➕,➖,✖️,➗) 기능을 수행한 후 2) 결과 값을 반환하는 메서드와 연산 결과를 저장하는 컬렉션 타입 필드를 가진 Calculator 클래스를 생성합니다.Lv 1에서 구현한 App 클래스의 main 메서드에 Calculator 클래스가 ..