분류 전체보기 123

JVM 정리하기!

JVM이란? JVM은 Java Virtual Machine의 줄임말로 자바를 실행하기 위해 필요한 가상 머신을 말한다. Java의 특징으로 OS에 종속적이지 않은데 이는 Window든 Mac이든 Linux계열이든 상관없이 각 OS 에 맞는 플랫폼 JVM만 존재한다면 마치 가상 컴퓨터를 사용하듯 java class 파일들을 사용할 수 있는 것이다. JVM은 OS로부터 우리가 사용하고 싶은 프로그램이 필요로하는 메모리를 할당 받고 자바 파일이 compiler에 의해 자바 바이트 코드로 변환된 다음 클래스 로더를 통해 로딩되어 수행이 이루어지게 된다. 이 와중에 GC(Garbage Collection)같은 메모리 효율을 높이기 위한 작업을 수행하고, 각 해석된 자바 바이트 코드는 런타임 데이터 영역에 배치되게..

Language/Java 2022.07.24

스프링 시작시 코드를 실행 시키는 3가지 방법

스프링 시작시 코드를 실행 시키는 3가지 방법 캠프 강의를 듣다가 스프링 부트를 시작하는 main메소드가 들어있는 OOOApplication.java 내부에 새로운 메소드를 만들어 테스트를 진행하는 것을 보고 정리해두면 좋을 것 같아 적는다. 스프링 부트가 시작되고 각 빈들이 만들어지게 되는데 이 때 초기화를 하고 필요한 로직을 끼워 넣는 방법이다. 사용할 일이 있을 것 같긴 하나 구체적으로는 모르겠어서 일단 정리해둔다. 0. 스프링 부트 애플리케이션 main 메소드 내부에 코드 넣기 제일 쉬운 방법이다. 스프링을 시작하려면 이 main method를 거쳐가게 되고, 그 이후에 어떤 코드를 넣는다면 스프링 부트가 초기화되고 난 이후에 바로 실행이 가능하다. 다만, 보통의 경우에는 스프링을 통해 생성된 빈..

Web Dev/Spring 2022.07.22

객체지향처럼 생각하기

잘 정리된 References 블로그 글, 책 등이 많아서 읽어보면서 궁금한 점이나 배운 점을 정리하려고 한다. Java | 객체 지향의 3가지 특징 - 캡슐화, 상속, 다형성 객체 지향 프로그래밍(Object Oriented Programming, OOP)은 각각의 기능들을 객체화(클래스화)시켜 메인함수에서는 객체화시킨 기능들을 호출해서 사용하는 프로그래밍 기법으로 캡슐화, 상속, 다형성의 특징을 가지고 있다. 캡슐화(Encapsulation) → 캡슐화란 객체의 필드, 메소드를 하나로 묶고, 실제 구현 내용을 감추는 것을 말한다. 상속(Inheritance) → 자식 클래스가 부모(상위) 클래스의 모든 자원을 물려받는 것을 의미한다. 상속을 통해서 비효율적인 코드의 중복을 줄여주어 효율성을 올리고 개..

Web Dev 2022.07.21