목록[백엔드]/[Java | 학습기록] (26)
개발자로 후회없는 삶 살기
서론※ 과거에 기록한 내용에서 중요한 부분만 발췌하여 모두가 이해하기 쉽게 다시 서술한다. 본론- 추상 클래스란?public abstract class Car { public abstract void drive(); public abstract void stop();}추상 메서드를 가지는 클래스로, 추상 메서드를 가지는 것 외에는 일반 클래스와 다른 게 없다. 추상 메서드란 함수 원형만 있고 코드 블럭 내부는 비어 있는 메서드를 의미한다. 이제부터 추상 클래스와 추상 메서드를 왜 사용하고 어떠한 특징을 가지고 있는지 알아보자 -> 추상 클래스가 되는 조건 ✅1. 부모 클래스로서 추상 메서드를 가짐2. 자식 클래스인데 부모인 추상 클래스의 추상 메서드를 구현하지 않고 추상 메서드로 유지함추상 클..
서론※ 과거에 기록한 내용에서 중요한 부분만 발췌하여 모두가 이해하기 쉽게 다시 서술한다. 본론- 상속이란?부모 클래스의 멤버를 자식 클래스에서 사용할 수 있도록 물려 주는 것으로, 단어 뜻과 유사한 방식으로 동작한다. 실제로, 부모 클래스에 작성한 필드와 메서드를 자식 클래스에서 작성한 것처럼 사용할 수 있다. public class Animal { protected String color; private String name; protected void speak() { System.out.println("동물이 어떻게 말한다."); }}public class Lion extends Animal {}자식인 Lion이 Animal을 상속 받는 코드이다. Lion에는 코..
서론※ 과거에 공부한 내용에서 중요한 부분만 발췌하여 모두가 이해하기 쉽게 다시 서술한다. 본론- 접근 지정자-> 접근 지정자의 목적public class A { public int a; protected int b; int c; private int d;}자바는 객체 지향 언어로 캡슐화, 추상화, 상속화, 다형화라는 특징을 가진다. 그 중 캡슐화를 만족하기 위해 접근 지정자를 사용한다. 캡슐화란 클래스를 하나의 캡슐처럼 외부와 독립된 공간으로 보고 외부와 적절히 상호작용하는 것을 목표로 한다. 외부와 적절히 상호 작용을 하기 위해선 데이터의 I/O가 있어야 하는데 접근 지정자를 사용하면 클래스 내부 데이터의 접근 권한을 조절하여 데이터의 흐름을 제어할 수 있다. -> 종류publi..
서론 ※ 이 포스트는 다음 강의의 학습이 목표임을 밝힙니다. https://www.inflearn.com/course/the-java-code-manipulation 더 자바, 코드를 조작하는 다양한 방법 - 인프런 | 강의 여러분이 사용하고 있는 많은 자바 라이브러리와 프레임워크가 "어떻게" 이런 기능을 제공할 지 궁금한적 있으신가요? 이번 강좌를 통해 자바가 제공하는 다양한 코드 또는 객체를 조작하는 방 www.inflearn.com 본론 바이트 코드를 조작하는 예제를 들어보겠습니다. - 코드 커버리지 현재 신청이 꽉 찼는지 확인하는 메서드가 있습니다. max가 0이면 무한대로 신청을 받는 것이고 현재 신청 수가 max보다 적어도 full이 아닙니다. 이에 대한 테스트 코드를 작성합니다. 코드 커버리..
서론 ※ 이 포스트는 다음 강의의 학습이 목표임을 밝힙니다. https://www.inflearn.com/course/%EB%94%94%EC%9E%90%EC%9D%B8-%ED%8C%A8%ED%84%B4/dashboard 코딩으로 학습하는 GoF의 디자인 패턴 - 인프런 | 강의 디자인 패턴을 알고 있다면 스프링 뿐 아니라 여러 다양한 기술 및 프로그래밍 언어도 보다 쉽게 학습할 수 있습니다. 또한, 보다 유연하고 재사용성이 뛰어난 객체 지향 소프트웨어를 개발할 www.inflearn.com 본론 - 패턴 소개 특정한 객체를 접근하기 전에 프록시를 먼저 지나도록 하는 패턴으로 대리인이라는 사전 뜻을 가집니다. 클라이언트가 원래 사용하려는 객체를 직접 쓰는 게 아니라 대리인을 거쳐서 쓰는 패턴입니다. 맨 처..
서론 ※ 이 포스트는 다음 강의의 학습이 목표임을 밝힙니다. https://www.inflearn.com/course/%EB%94%94%EC%9E%90%EC%9D%B8-%ED%8C%A8%ED%84%B4/dashboard 코딩으로 학습하는 GoF의 디자인 패턴 - 인프런 | 강의 디자인 패턴을 알고 있다면 스프링 뿐 아니라 여러 다양한 기술 및 프로그래밍 언어도 보다 쉽게 학습할 수 있습니다. 또한, 보다 유연하고 재사용성이 뛰어난 객체 지향 소프트웨어를 개발할 www.inflearn.com 본론 - 패턴 소개 가벼운이라는 뜻으로 복싱 체급중에 가벼운 체급을 플라이 웨이트라고 합니다. 많은 객체를 만드는 어플에서 결국 OOM이 발생할 수 있는데 그때 사용할 수 있는 패턴입니다. 자주 변하지 않는 속성을 따..
서론 ※ 이 포스트는 다음 강의의 학습이 목표임을 밝힙니다. https://www.inflearn.com/course/%EB%94%94%EC%9E%90%EC%9D%B8-%ED%8C%A8%ED%84%B4/dashboard 코딩으로 학습하는 GoF의 디자인 패턴 - 인프런 | 강의 디자인 패턴을 알고 있다면 스프링 뿐 아니라 여러 다양한 기술 및 프로그래밍 언어도 보다 쉽게 학습할 수 있습니다. 또한, 보다 유연하고 재사용성이 뛰어난 객체 지향 소프트웨어를 개발할 www.inflearn.com 본론 - 패턴 소개 퍼사드의 단어뜻은 건물의 입구를 바라보는 외벽을 뜻합니다. 입구를 보면 내부 내용을 알 수는 없습니다. 또한 그 안에 들어가도 또 다른 레이어로 배관, 전기가 어떻게 연결되어있는지 알 수 없습니다...
서론 ※ 이 포스트는 다음 강의의 학습이 목표임을 밝힙니다. https://www.inflearn.com/course/%EB%94%94%EC%9E%90%EC%9D%B8-%ED%8C%A8%ED%84%B4/dashboard 코딩으로 학습하는 GoF의 디자인 패턴 - 인프런 | 강의 디자인 패턴을 알고 있다면 스프링 뿐 아니라 여러 다양한 기술 및 프로그래밍 언어도 보다 쉽게 학습할 수 있습니다. 또한, 보다 유연하고 재사용성이 뛰어난 객체 지향 소프트웨어를 개발할 www.inflearn.com 본론 - 데코레이터 패턴 소개 기존에 코드를 변경하지 않으면서 부가적인 코드를 추가할 수 있는 패턴입니다. 부가 기능을 다이나믹하게(유연하게) 런타임에 동적으로 추가할 수 있습니다. - 코드 public class C..