일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- maven
- netstat
- 멀티스레드
- 정렬
- MAP
- trunc(sysdate)
- 오라클 버림 함수
- ssd
- RAM
- Servlet
- ArrayList
- web
- desc
- HDD
- url
- cpu
- heap
- queue
- stack
- 스케줄 삭제
- 이진탐색트리
- 오라클 trunc()
- git push
- 스레드
- HashMap
- trunc()
- trunc(date)
- null
- Git
- 프로세스 종료
- Today
- Total
목록전체 글 (60)
無테고리 인생살이
boiler-plate code란? 최소한의 변경으로 여러 곳에서 재사용할 수 있는, 반복적이고 비슷한 형태를 띄는 코드를 말한다. 쉽게 말해서 반복되는 코드이다. Java로 예를 들자면, getter, setter 리스소 반환(해제)를 위한 finally에서의 close 메서드 보일러 플레이트를 제거하는 방법 Lombok @Getter, @Setter try-with-resource
hash 관련 용어정리 hash table hash table의 장단점 hash collision (해시 충돌) 해시 알고리즘 hash collision 해결법 Hashtable, HashMap 공통점과 차이점 자바 Object 클래스에 선언된 메서드들은 스레드와 객체를 처리하기 위한 메서드로 나눠져있다. 객체를 처리하기 위한 메서드에는 toString(), equals(), hashCode(), getClass(), clone(), finalize() 이 있다. 그 중, hashCode() 메서드는 객체에 대한 해시코드 값을 int 형태로 리턴한다는 설명을 봤고 hash code가 무엇을 의미하는지 자세히 알아보기로 했다. hash code를 검색하면, hash, hashing, hash functio..
알고리즘이란 시간복잡도와 공간복잡도 빅오표기법 시간복잡도 줄이는 법 알고리즘이란? : 어떤 목적을 달성하거나 결과물을 만들어내기 위해 거쳐야 하는 일련의 과정들 하나의 상황에서 다양한 알고리즘을 적용할 수 있다. 중요한 것은 '시간복잡도가 가장 낮은 알고리즘을 선택하는 것'이다. 시간 복잡도란? : 특정 알고리즘을 수행하는데 걸리는 시간 시간 복잡도는 실제 시간을 측정해서 표현하는 것인가? : NO 동일한 알고리즘이라도 컴퓨터 하드웨어나 프로그래밍 언어에 따라 실행시간이 크게 달라질 수 있기 때문에, 실제시간을 측정해서 시간복잡도를 나타내는 것은 객관적 지표가 될 수 없다. 그렇기에, 알고리즘에 사용되는 연산을 수치화해서 시간복잡도를 나타낸다. 공간 복잡도란? : 알고리즘 수행에 사용되는 메모리 양 시간..
Memory Leak이란? 컴퓨터 프로그램이 필요하지 않은 메모리를 계속 점유하고 있는 현상 (=메모리 낭비) 할당된 메모리를 사용한 후, 반환하지 않는 것이 누적되면 메모리가 낭비되고 성능에 문제를 일으킨다. ex) 클래스에 고정된 정적 멤버, 즉, static 이 붙은 변수와 메서드는 Method Area(=Static Area, Class Area)에 저장되고 이 영역엔 GC가 발생하지 않아, 프로그램 시작부터 종료 전까지 Method Area의 메모리는 할당된 상태를 유지한다. static 키워드를 무분별하게 사용하면, 메모리릭이 발생하고 성능저하
GC 정의 GC가 삭제할 객체를 식별하는 방법 GC 동작 과정 (Mark And Sweep) GC 단점 및 STW Heap의 구조 GC는 언제 발생할까? GC란? 가비지 컬렉션(Garbage Collection)을 줄여서 GC라고 부른다. GC는 JVM의 Heap 영역에서 참조가 유효하지 않은 객체를 주기적으로 삭제하는 기능이고 GC를 동작시키는 주체, 즉 프로그램을 Garbage Collector라고 한다. JVM 안에 탑재된 또 하나의 작은 메모리 관리 프로그램(S/W)인 셈이다. 이는 메모리 공간을 확보하고 메모리 누수(memory leak)을 막는 역할을 한다. C, C++에서는 이러한 가비지 컬렉션이 없어 개발자가 메모리 할당과 해제를 직접해줘야 하지만, Java는 JVM에 탑재되어 있는 가비지..
JVM 정의 JVM 전체 구조 자바 프로그램 실행과정 JVM 메모리 영역 ## 일반 프로그램 VS 자바 프로그램 일반 프로그램은 운영체제(=OS) 위에서 실행됩니다. 하지만, 자바 프로그램은 JVM 위에서 실행되기 때문에, 운영체제가 JVM을 실행시키고 JVM이 자바 프로그램을 실행시킵니다. ## 자바 프로그램의 실행구조 JVM이 설치되어 있다면, 하나의 자바 프로그램은 운영체제에 구애받지 않고 실행이 가능합니다. (뛰어난 이식성) # JVM이란? Java Virtual Machine의 약자로, 자바 가상 머신이라고 불립니다. 위 그림에서 볼 수 있듯이 JVM은 운영체제에서 구동되며, 자바 프로그램을 실행시키는 역할을 하는 또 다른 소프트웨어입니다. # JVM 전체 구조 Class Loader: 컴파일된..