자바에서 사용되는 Stack Trace를 알아보자 하나의 프로그램을 수행하는 동안 스레드는 다양한 메서드를 돌아다니게 된다. 메서드가 호출되고 종료되면, 메서드를 호출하는 곳으로 다시 돌아가게 된다. 이렇게 호출된 곳으로 다시 돌아가기 위해서는 Stack에 메서드가 호출된 포인트를 기록해야, 그 기록을 따라서 다시 돌아갈 수 있게 된다. 프로그램 실행 중 기록되는 특정 포인트들을 쌓아놓고 활용하는 것이 Stack Trace가 되겠다. 디버깅을 수행할 경우에 유용하게 활용될 수 있다. 프로그램이 수행될 경우, 여러 클래스를 돌아다니면서 작업을 하게 될 수 있다. 이 때, 버그가 발생하면 수많은 메서드 호출을 디버깅과정는 과정을 거쳐야 한다. 버그가 발생되는 곳으로 예상 되는 곳에서 Stack Trace를 ..
1. 메모리 프로그램을 실행하기 위한 데이터 및 명령어를 저장하는 공간 ※ 메모리구조를 공부하는 이유 - 같은 기능의 프로그램이더라도 메모리 관리에 따라 성능이 좌우됨. - 메모리 관리가 되지 않은 경우 속도저하 현상이나 튕김 현상 등이 일어날 수 있음. - 한정된 메모리를 효율적으로 사용하여 최고의 성능을 내기 위함. 2. 자바 프로그램의 실행구조 프로그램이 실행되기 위해서는 windows나 linux같은 운영체제(OS)가 제어하고 있는 시스템의 리소스의 일부인 메모리(RAM : 주기억장치)를 제어할수 있어야 하는데, java이전의 c같은 대부분의 언어로 만들어진 프로그램은 이러한 이유때문에 OS에 종속도어 실행되게 되어 있었다. java프로그램은 JVM(Java Virtual Machine : 자바가..
1) . : 어떤 문자이건 간에 임의의 한 글자를 나타냄 2) * : 바로 앞의 문자를 의미하며 그 문자가 없거나 하나 이상임을 나타냄 3) + : 바로 앞의 문자를 의미하며 그 문자가 하나 이상임을 나타냄 4) ? : 바로 앞의 문자가 없거나 혹은 있음을 나타냄 5) ^ : 바로 뒤의 문자열을 기준으로 이것과 동일한 문자열로 시작되는 것을 가리킴 6) $ : 문자열의 맨 마지막을 가리킴 7) [] : 각괄호는 [] 안에 있는 문자열 중에서 하나의 문자만을 의미함 [] 안에서 범위를 지정할 때는 '-' 문자를 사용함 만일 원하지 않는 문자를 제외한 나머지 문자를 가리킬 때에는 []안의 첫 문자로 '^' 를 사용함 8) {} : 중괄호 {} 는 {} 앞에 있는 문자나 문자열의 개수를 결정 9) () : (..
인터페이스.. 추상클래스..추상메소드.. 너무복잡합니다검색을 해도 잘 정리된 블로그는 이해할수는 있지만 정확히 뭐가뭔지 잘모를때예제를 살펴보면 정확하게 알수 있습니다예제를 검색해도 이해하기 어려운 부분이 있을수 있습니다이럴때!!! 이미 잘 정리된(?) 정리라기 보다는 정의에 가까운 java api를 보면됩니다우리가 import 해서 쓰는 클래스들 중에서 잘살펴보면 interface와 abstract 클래스와 메소드를 잘 활용한 클래스가 있습니다! 그전에 최소한 뭐가뭔지는 알아야 되니 간단하게 정의해봤습니다정의를 읽고난후에 설명드리겠습니다.인터페이스란 간단히 말해서 클래스끼리 어떤방식으로 데이터를 주고받을것이냐에 대한동작을 기술한것입니다.일반적으로 클래스는 설계와 구현을 함께 할수있지만 인터페이스는 순수하..
추상 클래스- 상속 관계에 있는 클래스 중에서 상위 클래스에서는 특별한 구현 없이 사용하고자 하는 메소드만 기술하고, 구체적인 구현은 하위 클래스에서 하도록 함. 구체적인 내용없이 모양만 갖춘 클래스 > 추상 메소드를 가진 클래스로, new 연산자로 객체 생성할 수 없습니다. > 따라서, 추상 클래스의 추상 메소드는 자신이 직접 이용하지 못하고, 반드시 하위 클래스에서 이 메소드를 상속받아 구현해야 합니다.> 추상클래스의 추상 메소드는 반드시 Overriding 되어야 하기 때문에, 하위 클래스들이 특정 메소드를 반드시 구현하도록 강제할 수 있습니다. 그리고, 추상 메소드를 오버라이딩 하지 않으면 상속받는 클래스는 자동으로 추상 클래스가 됩니다. > 추상 클래스는 일반 메소드와 추상 메소드를 모두 포함 ..
- Total
- Today
- Yesterday
- nvida gpu 할당
- Hibernate
- Gc
- orm
- non
- 대화로 코딩
- minikube
- 메일서버
- POI
- 메모리
- 딥러닝
- 아키텍처비기능
- ai coding
- 정규식
- 바이브코딩
- Persistent
- 아키텍처요소
- 비기능
- JVM
- 릴레이
- 자바스크립트
- apache POI
- memory
- non-functional
- poi셀크기
- JPA
- #iamreo
- #gof #디자인패턴
- mailserver
- vibecoding
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
