자바 가상 머신 프로그래밍 9. 자바 클래스 파일의 내부 구조 Pslab 오민경.

Slides:



Advertisements
Similar presentations
10장. 시기별 학급경영 11조 염지수 이 슬 권용민 신해식.
Advertisements

일본 근세사. (1) 에도막부의 개창 ( ㄱ ) 세키가하라의 전투 (1600) - 히데요시의 사후 다섯 명의 다이로 ( 大老 ) 가운데 최대 영지 (250 만석 ) 를 보유하고 있던 도쿠가와 이에야스가 급부상. 이에 이에야스와 반목해 온 이시다 미쓰나리 ( 石田三成 ),
아니마 / 아니무스 송문주 조아라. 아니마 아니마란 ? 남성의 마음속에 있는 여성적 심리 경향이 인격화 한 것. 막연한 느낌이나 기분, 예견적인 육감, 비합리적인 것에 대 한 감수성, 개인적인 사랑의 능력, 자연에 대한 감정, 그리.
대구가톨릭대학교 체육교육과 06 학번 영안중학교 체육교사 신웅섭 반갑습니다. 반야월초등학교 축구부 대륜중학교 축구부 대륜고등학교 대구가톨릭대학교 차석 입학 대구가톨릭대학교 수석 졸업 2014 년 경북중등임용 체육 차석 합격 영안중학교 체육교사 근무 소개.
교수님 영상 제 2 장 관세법 일반 제 1 절 통칙 제 2 절 법 해석의 원칙 등 제 3 절 기한과 기간 제 4 절 서류의 송달 등 제 5 절 관세의 부과 및 징수 제 6 절 납세의무의 소멸 등.
일장 - 1 일 24 시간 중의 명기 ( 낮 ) 의 길이 ( 밤은 암기, 낮은 명기 ) 광주기성 - 하루 중 낮의 길이의 장단에 따라 식물의 꽃눈 형성이 달라지는 현상 일장이 식물의 개화현상을 조절하는 중요한 요인 단일식물 - 단일조건에서 개화가 촉진되는 식물 장일식물.
수학 일기 제 1 라운드 스피드 퀴즈 피타고라스 수학책 1. 구장산술 2. 주비산경 3. 차근방몽구 4. 기하학원론 5. 산술관견.
일본주식시장의 신 고레가와긴조 투자전략 6 조 안승권. 신문수 발표자 : 신 문 수. 출 생 : 1897 효고현에서 출생 학 력 : 초등학교졸업, 사업가 1992 년 95 세 사망 유일한 자서전 1981 년 스미토모 금속광산 주식매매 200 억엔 벌다⇒ 일본 소득세 납세.
책임연구자 필수 보고의무 사항 및 보고 기한 1. 임상시험 정기보고 의무 임상시험계획 승인을 받은 자 ( 의뢰자, 연구자주도 다기관 공동연구의 시험책임자 또는 단일기관 연구의 시험책임자 ) 는 매년 “ 임상시험 실시상황 보고서 ”( 의약품 등의 안전에 관한 규칙 별지 제.
2 학년 6 반 1 조 고은수 구성현 권오제 김강서.  해당 언어에 본디부터 있던 말이나 그것에 기초하여 새로 만들어진 말  어떤 고장 고유의 독특한 말  Ex) 아버지, 어머니, 하늘, 땅.
2009개정 중등 국어과 교육과정 울산광역시교육청 교육과정 컨설팅단 : 정일진.
2014년도 교원 및 기간제교사 성과상여금 전달교육 개 회 국기에 대한 경례 - 인사말
제가 소개할 인물은?? ^ㅡ^B1A4입^ㅡ^니다 5학년4반9번 이하민
1. 비정규노동이란 2. 비정규노동의 확대 원인 3. 비정규노동자의 삶 4. 비정규노동의 문제
8월 도서관 행사 일정 ★오픈갤러리★ 테마도서전시 “휴가(방학) 때 읽을만한 책” 8.1~8.8 일 월 화 수 목 금 토
제7장 빈곤아동 담당교수 : 이 상 신.
선진 고양교육 “유아교육 행정 업무 연수” 유치원 회계실무 및 유아학비 연수 경기도고양교육청.
달라지는 노동법 개정 내용 노무법인 正道 잠시나마… 주요 노동관계법 개정내용 3. 마무리 Contents
나는 우유가 좋다 과학 1학년 8. 소화와 순환 활용방법 수업 시작 시 제시되는 초기화면으로 학습 주제를 제시한다
서울시 ‘찾아가는 동 주민센터’ 사업 시행 이후 지역사회의 변화
국가도서관통계시스템 수치입력자 매뉴얼 이의신청 방법 Version. 1.0.
장애인을 위한 공공화장실 개선 광명북중학교 윤정환.
묵자 겸애, 비명, 비공, 상현, 상동, 천지, 명귀, 삼표 법.
제5장 산업재해 보상보험 ☞ 목적 : 근로자의 업무와 관련하여 발생한 재해근로자의 재활 및 사회복귀를 촉진시키기 위하여 이에 필요한 보험시설을 설치 운영하며, 피해를 예방하고 근로자의 복지증진을 위한 사업을 행함으로써 근로자의 보호에 이바지함을 목적으로 함. 산재보험은.
보건의료 인력양성의 문제점과 방안 김윤미, 전현화, 김지연, 김현정.
내 아이를 위한 구강관리.
14주차 1교시 강화계획 [학습목표] 1. 강화계획의 정의를 안다 [학습내용] 1. 단순한 강화계획 2. 간헐적 강화 3. 복합 계획 4. 선택과 대응법칙 [사전학습] 강화계획이 일어날 수 있는 사례를 생각해본다.
제16장 원무통계 • 분석 ☞ 통계란 특정의 사실을 일정한 기준에 의하여 숫자로 표시한 것을 말한다.통계로서 활용할 수 있는 조건으로는 ① 동질성을 지녀야 하고 ② 기준이 명확하고 ③ 계속성이 지속되어야 하며 ④ 숫자로 표시하여야 한다 경영실적의.
문의 : A-JOBS 프로그램 오리엔테이션 (금) 오후 3시 본관 2층 2178호 문의 :
연장근로와 야간·휴일근로 김영호 노무사 나눔 노사관계연구소 소장 연세대 일반대학원 박사 수료 고려사이버대 법학과 외래교수
주 무 현 (고용정보원 선임연구위원) 지역고용사업의 주요 동향 주 무 현 (고용정보원 선임연구위원)
지역간 격차.
서울지방세무사회 부가세 교육 사진클릭-자료 다운 세무사 김재우.
치매의 예방 김 은민 윤금 노인요양원 치매의.
4부 클래스 라이브러리 “4부에서는 자바 언어의 API인 클래스 라이브러리에 관해 설명합니다
모체가 태아에 미치는 영향 과학 1 학년 2 학기 환경> 04.태아의 발생 과정은 어떻게 진행될까?[6 / 6] 수업계획
2007년 1학기 전산학개론 성신여자대학교 컴퓨터정보학부
마산에 대하여 만든이 : 2204 김신우, 2202 권성헌.
해양생태계 이상현상 대응관리 남이현.
23강 API - II - 약방의 감초 Random 클래스 - Scanner 및 Sysout - Wrapper 클래스의 이해
보상사업 제안서 반룡일반산업단지 사업시행자 성창아이엔디㈜ 대표 정연교님 귀하 주 식 회 사 한 국 보 상 원.
2017년 1학기 국가근로장학금 장학생 교육 1.
과학 탐구 토론 대회 1학년 2반 박승원 1학년 5반 권민성.
■ 화성공장 산학인턴 버스 노선 확인 안내 문의 전화 : 안내페이지 접속 1
사용자 매뉴얼 Version 1.0 대금지급(외주)
경영 마인드의 이해 경영학 원론 제 1조 경영학과 오현기 이진희
생물의 구성 단계 생물체를 구성하는 기본 단위 모양과 기능이 같은 세포들의 모임 세포
The Party-State (1) 영 어 학 부 강물결 영 어 학 부 박우인
지구 온난화 원재환.
의성어 국어어휘론 이신옥 정지연 정지형 임총인.
3조 권기태 윤주영 은화령 이형찬 이송민 김동욱 한승묵
장애인단체 간담회 마스터 제목 스타일 편집 마스터 제목 스타일 편집 장애인 단체 간담회 마스터 부제목 스타일 편집
교육방법 및 평가방법 안내.
6장 마케팅 조사 박소현, 김중호, 박기찬.
한밭대학교 창업경영대학원 회계정보학과 장 광 식
CONTENTS Ⅰ. 대회목적 Ⅱ. 대회개요 Ⅲ. 대회요강 Ⅳ. 대회규정 Ⅴ. 운영계획 Ⅵ. 홍보계획 Ⅶ. 예산계획.
음양오행과 물리학 조 원 : 김용훈, 양범길, 박수진, 윤진희, 이경남, 박미옥, 박지선 (11조)
문서의 작성 정보과학부 이지연.
이야기 치료에 대하여 <8조 학문적 글쓰기 발표> 주희록 최은지
교육행정 및 경영 제13장 교육재정 (화) 안 봉 직.
전화응대 매뉴얼.
포이에마장애인보호작업장 시설소개서.
LTSystem in Korea since 2011
박성진 컴퓨터 프로그래밍 기초 [03] 변수와 자료형 박성진
Lecture 05 문자열, 배열, 디버깅 Kwang-Man Ko
房思琪的初恋乐园 ‘팡쓰치’로 보는 문학의 힘 정은비.
비축사업 전자계약시스템 도입 용역 사용자매뉴얼(업체담당자용) Version 1.0.
자바 가상 머신 프로그래밍 Chapter 3. 메소드 작성하기 Pslab 오민경.
2009개정 중등 국어과 교육과정.
중국문학개론 한부와 겅건안문학 중어중국학과 ㅇ이진원 한부와 건안문학.
Presentation transcript:

자바 가상 머신 프로그래밍 9. 자바 클래스 파일의 내부 구조 Pslab 오민경

Contents 클래스 파일의 내부 구조 클래스 파일 헤더 상수 풀 클래스에 관한 정보 필드와 메소드 클래스의 속성 그 외 속성

클래스 파일의 내부구조 클래스 구조 ( p192 그림 6.1 참고 ) 클래스 파일 헤더 상수 풀 클래스에 관한 정보 필드와 메소드 클래스의 속성

클래스 파일의 내부구조 (cont.) 자바 소스 ( p251 소스 참고 ) Oolong 소스 ( p58 소스 참고 ) DumpClass 프로그램 클래스 파일을 바이트 단위로 분석해 주는 프로그램 결과 출력 1열 : 파일내의 오프셋 (16진수로 표현) 2열 : 그 위치에서의 바이트 값 (16진수로 표현) 3열 : 바이트 값들을 해석한 것 000000 cafebabe magic = ca fe ba be 000004 0003 minor version = 3 000006 002d major version = 45

클래스 파일 헤더 클래스 파일 헤더 매직 수 클래스 파일로 인식되기 위해 필요한 정보 매직 수 : CAFEBABE 부 버전 주 버전 p252 코드 참고 클래스 파일 내의 대부분의 숫자는 별다른 언급이 없는 경우에 부호 없는 정수로 취급한다.

상수 풀 상수 풀 p253 코드 참고 상수 풀을 사용하는 목적 상수 개수 상수(태그와 데이터)의 리스트 태그 : 어떤 종류의 상수인지를 의미 p255 표 9.1 참고 0번 엔트리는 가상 머신 자체의 사용을 목적으로 예약되어 있다. p253 코드 참고 상수 풀을 사용하는 목적 클래스 파일 내의 모든 곳에서 쉽게 참조될 수 있도록 상수 값을 한 데 모아 놓기 위함이다.

상수 풀 (cont.) UTF8 엔트리 (태그 1) 숫자 상수 엔트리 (태그 3,4,5,6) 임의의 스트링을 저장하기 위해 사용 가변길이 정보를 저장하기 위하여 다른 상수에 의해 사용된다. 데이터의 길이를 의미하는 2바이트로 시작 숫자 상수 엔트리 (태그 3,4,5,6) Integer와 long 상수는 각각 32비트와 64비트 사용, 2의 보수인 부호 있는 정수로 표현 Float와 Double 상수는 각각 32비트와 64비트 사용, IEEE 754 부동 소수점 포맷에 따르는 부동 소수점 실수로 해석 필드, 메소드, 클래스 엔트리 (태그 9,10,11) 필드나 메소드 명령어에서 필드나 메소드를 참조하기 위해 사용된다.

클래스에 관한 정보 클래스에 관한 정보 P259 코드 참고 접근 플래그 This 클래스 슈퍼 클래스 인터페이스 카운트 클래스 차원의 접근 정보 (비트 벡터로 해석) P260 그림 9.1, 표 9.3 참고 This 클래스 이 클래스의 이름을 의미하는 상수 풀 내의 상수를 가리킨다. 슈퍼 클래스 인터페이스 카운트 인터페이스 리스트 P259 코드 참고

필드와 메소드 필드와 메소드 생성자 메소드는 명시하지 않아도 자동으로 추가 P260 코드 참고 필드 개수 필드(접근 플래그, 이름, 설명자, 속성)의 리스트 필드 속성 필드 속성 개수 필드 속성(이름, 데이터 길이, 데이터)의 리스트 메소드 개수 메소드(접근 플래그, 이름, 설명자, 속성)의 리스트 메소드 속성 메소드 속성 카운트 메소드(속성 이름, 길이 데이터)의 리스트 생성자 메소드는 명시하지 않아도 자동으로 추가 P260 코드 참고

필드와 메소드 (cont.) Code 속성(메소드 속성)의 데이터 스택의 최대 높이 지역변수의 최대 개수 메소드의 실제 코드 코드의 길이 Opcode와 약간의 인자로 구성된 명령어의 리스트 예외 테이블 개수 예외 테이블 리스트 Code 속성 자체에 대한 속성의 개수 속성(이름, 길이, 데이터)의 리스트 디버깅정보와 같은 코드 자체에 대한 정보를 저장하는데 사용 Ex. LineNumberTable 속성

클래스의 속성 클래스의 속성 클래스 파일 속성 카운트 클래스 파일 속성(이름, 길이 데이터)의 리스트 P267 코드 참고

그 외 속성들 ConstantValue 속성 Exceptions 속성 InnerClasses 속성 p268 코드 참고