본문 바로가기
반응형

전체 글163

[JVM 밑바닥] 6장 클래스 파일 클래스 파일 기본 구조자바 클래스 파일은 기본적으로 클래스 선언과 멤버(필드와 메서드)로 구성됩니다.예를 들어, Person이라는 클래스를 만든다면, 이 클래스는 아래와 같은 요소로 구성될 수 있습니다:클래스 이름: 클래스 선언 부분으로 class Person {}처럼 작성됩니다.필드: 클래스가 가지는 속성을 정의하며, 예를 들어 String name; int age;처럼 작성됩니다.생성자: 객체 생성 시 호출되는 메서드로, 클래스와 이름이 동일하고 리턴 타입이 없습니다.메서드: 클래스의 동작을 정의하는 함수들로, 예를 들어 public void greet() {}처럼 작성됩니다.자바 클래스 파일 구조클래스 파일은 크게 다음과 같은 구조로 구성됩니다.Magic Number: 파일의 시작 부분에 위치한 고.. 2024. 10. 27.
[JVM 밑바닥] 3장 가비지 컬렉터와 메모리 할당 전략 -1 조아써 오늘은 3장에 3-1 부터 3-3까지만 정리해보자! 대상이 죽었는가?자바 세계에서는 거의 모든 객체 인스턴스가 힙에 저장된다. 가비지 컬렉터가 힙을 청소하려면 가장 먼저 어떤 객체가 살아 있고, 또 어떤 객체가 죽었는지 판단해야 한다. 도달 가능성 분석 알고리즘GC루트 라고 하는 루트 객체들을 시작 노드 집합으로 쓰는 것이다. 시작 노드들에서 출발하여 참조하는 다른 객체들로 탐색해 들어간다. 그리고 어떤 객체와 GC 루트 사이를 이어주는 참조 체인이 없다면, 즉 GC 루트로부터 도달 불가능한 객체는 더 이상 사용할 수 없는 게 확실해진다.그럼 자바에서는 어떤 객체가 GC 루트를 이용할 수 있을까?가상 머신 스택(스택 프레임의 지역 변수 테이블)에서 참조하는 객체: 현재 실행중인 메서드에서 쓰는 매.. 2024. 8. 7.
[JVM 밑바닥] 1장. 자바, 2장 자동 메모리 관리 조아써! JVM 밑바닥까지 파헤치기 너로 정했다!읽어보자!1장JDK (Java Development Kit)Java 프로그램을 개발하기 위해 필요한 도구 모음 이다.컴파일러, 디버깅 도구, 자바 가상 머신(JVM) 등을 포함하고있다.JRE는 JDK에 포함되어있다.JRE (Java Runtime Environment)Java 프로그램을 실행하는데 필요한 도구들로 구성된 패키지 이다. 자바 메모리 영역과 메모리 오버플로런타임 데이터 영역간단히 말하면, Java Application을 실행할 때 사용되는 데이터들이 저장되는 메모리 공간 이다.실제 클래스 파일이 적재되는 곳으로 JVM이 OS로부터 Java 프로그램 실행을 위한 데이터와 명령어를 저장하기 위해 할당 받는 메모리 공간 이다.메서드 영역(Method.. 2024. 7. 25.
세상에나.... 세월이 너무 빠르네...벌써 지금 회사에 들어온지 3년이 다 되어간다!! 스터디는 나름 중간중간 해왔지만... 뭔가 아직 자신이 없다...나는 지금 연차에 맞는 지식을 갖고있는 사람인가? 다시 되돌아본다...그래서 다시 책을 펼치고 다짐을 했다! 일단 다시 차근차근하게 해보자!이책 일단 끝까지 봐보자!그럼 어제의 나보다는 더 많이 아는거니까! 어제의 나 보다 더 나은 오늘의 나로 살아가기 위해서는 지금의 내가 움직여야해!정신차려!!! 새로운 공부방법 도저어어언...!! 조만간 공유하겠다! 2024. 7. 23.
나... 블로그 했었지... 맞다... 맙소사! 정말 오랜만에 블로그에 글쓴다 나름 찔끔씩 공부는 하고있었는데 블로그에 글쓰는게 정말 부지런해야하는구나... 회사 동기들끼리 하던 스터디도 정지돼서 방학이다~ 하면서 쉬고있었는데 또 불안해서 혼자 찔끔찔끔 책이라도 읽고있었다.. ㅋㅋ 공부한거 블로그에 써야지 써야지 했는데도 하루종일 업무한다고 컴퓨터 보다보니까 집에와서는 컴퓨터좀 그만봤으면해서 책만 읽고있었다...ㅋㅋㅋ 운동하다 허리통증이 생겨서 누워서 읽고 또 누워서 만화보고 ㅋㅋ 넷플릭스 보고 슬슬이제 블로그에도 정리하면서 다시 공부 시작해야겠다 긴시간 방학이였어! 잘쉬었지? 평일날 공부하는게 너무 힘들다... 세상 직장인분들 정말 대단하시고 존경스러움 ㅠㅠ 오늘보다 더 나은 내일의 내가 되기를 바라며 오늘도 힘차게 공부해보자! 근데 일단 .. 2023. 6. 11.
[CISCO NETWORK] PART 1 - OSI 7 Layer 이번에는 네트워크 7계층하고 프로토콜에 대해서 자세히 인것 같으면서도 아닌거같게 알아보자! ✅OSI 7계층 네트워크 통신이 일어나는 과정을 7단계로 나눈 국제 표준화 기구(ISO)에서 정의한 네트워크 표준 모델이다! 통신이 일어나는 과정을 단계별로 파악하기 용이하게 하기 위해서이다! 나는 말안들으니까 1번이 아니라 7번부터공부할꺼다! ⭐응용 계층 (Application Layer) 우리가 사용하는 프로그램을 말한다! 웹 브라우저, 어플 등등! 최종 목적지로써 HTTP, FTP, SMTP, Telnet 등과 같은 프로토콜이 있다. 응용 프로세스와 직접 관계하여 일반적인 응용 서비스를 수행한다. 네트워크 소프트웨어의 UI 부분, 사용자의 입출력 부분을 담당한다! ⭐표현 계층 (Presentation Laye.. 2023. 2. 16.
[CISCO NETWORK] PART 1 자! 이제 시작이야! 내가 정리하고 싶은 부분만 정리할꺼다! ✅네트워킹을 한다고 하면 LAN과 WAN이 공존한다! 무엇인지 알아보쟈! LAN (Local Area Network) 어느 한정된 공간에서 네트워크를 구성 한다는 것 WAN (Wide Area Network) 멀리 떨어진 지역을 서로 연결하는 경우 ✅이더넷(Ethernet)? 네트워킹의 한 방식 즉 네트워크를 만드는 방법 중 하나! CSMA/CD라는 프로토콜을 사용해서 통신한다! 👷‍♂️CSMA/CD란? - Carrier Sense Multiple Access/Collision Detection 을 줄여서 부르는 방식! 1. 통신하고 싶은 PC나 서버는 먼저 지금 네트워크상에 통신이 일어나고 있는지를 확인한다! (네트워크 자원을 쓰고있는 PC나.. 2023. 2. 13.
[Effective Java] 아이템 48 으아아아 내일 아니 12시 지났꾸나 오늘 스터디인데 너므 졸립다 왜 왜 주말에 안하고 이제하는거야!! 주말에 뭐하는데~~!~!!!!~!~!!! [책 규칙] 노란색 - 자세히 알아보고싶은 부분 초록색 - 핵심 개념 (블로그 정리시는 검은색으로!) 빨간색 - 무슨말인지 모르겠는 부분 [아이템 48] 스트림 병렬화는 주의해서 적용하라 스트림 병렬화를 알아보기전에 정리! 동시성(Concurrency)...? 멀티 작업을 위해 멀티 스레드가 번갈아가며 실행하는 성질! 싱글 코어 CPU를 이용한 멀티 작업은 병렬적으로 실행되는 것 처럼 보이지만 실제로는 동시성 작업임! 병렬성(Parallelism)...? 병렬성은 멀티 작업을 위해 멀티 코어를 이용해 동시에 실행하는 성질이다! 데이터 병렬성(Data Paralle.. 2023. 2. 8.
[Effective Java] 아이템 45 책 읽는것도 너어어어어어ㅓ어ㅓ무 힘들구나 [책 규칙] 노란색 - 자세히 알아보고싶은 부분 초록색 - 핵심 개념 (블로그 정리시는 검은색으로!) 빨간색 - 무슨말인지 모르겠는 부분 [아이템 45] 스트림은 주의해서 사용하라!!!! 스트림? 다량의 데이터 처리 작업(순차적이든 병렬적이든)을 돕고자 자바 8에 추가되었다! (책) 컬렉션, 배열 등에 저장된 요소들을 하나씩 참조하면서 코드를 실행할 수 있는 기능이다! 불필요한 for문을 사용하지 않을 수 있고, 람다식을 활용할 수 있어서 코드를 직관적이게 처리할 수 있다! 스트림 특징 데이터를 담는 저장소는 아니다! 데이터를 변경하지 않는다! 재사용 할 수 없다! 무제한일 수도 있다! 스트림 구조(스트림 파이프 라인) 데이터.Stream생성().중개연산()..... 2023. 2. 7.
반응형