일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- inheritance
- file access
- Class
- Encapusulation
- digitalRead
- Contour
- mfc
- parameter
- java
- Overloading
- compare
- Barcode
- length
- public
- sensor
- wpf
- APP
- preprocessing
- UNO
- Binary
- SERIAL
- Read
- memory
- Pointer
- Android
- stream
- Unity
- atmega328
- flutter
- aduino
- Today
- Total
목록JVM (4)
폴크(FOLC)
# JAVA 프로그램은 JVM(가상머신)을 통해서 실행 > JVM 은 운영체제(OS) 에게 프로그램을 수행하기 위해서 메모리 공간을 할당 받는다. > 메소드 영역 : 클래스와 변수들이 저장되는 공간 - .class 파일을 load 해서 관련 정보를 갖고 있는다. > 스택 영역 : 메소드들의 스택 프레임이 저장되는 공간 - 메소드가 호출되는 시점에 지역 변수와 매개 변수의 정보를 갖고 있는다. - 푸시로 데이터를 쌓고 팝으로 데이터를 꺼내온다. ( 후입선출 - LIFO ) > 힙 영역 : 인스턴스 변수가 저장되는 공간 ( 생성/삭제 ) - new 키워드를 이용해서 확보됨. # 메모리 할당 > User 에 의해서 힙 영역에 특정 공간을 관리하기 위한 요청이 발생 > new 명령어를 이용해서 할당 받고 del..
# 기본 # 특징 : 객체 지향 언어로 가상 머신( JVM : Java Virtual Machine )에서 동작 > 장점 - 운영체제와 독립적으로 실행 가능 ( JVM 덕분 ) - 필요한 기능만 제공하여 단순하고 배우기 쉽다. - 자동 메모리 관리가 되어서 안정성이 높다. - 연산자 Overloading 금지 - 제네릭 기능을 제공하여 가독성이 높다. > 단점 - JVM 환경에서만 실행되기에 속도가 조금 느리다. - 예외처리 관련하여 User 의 작업이 필요하다. - 코드 작성 길이가 조금 더 길다. # 구조 > class main() { 영역 > int AAA = 0; 영역 > public static void main(String[] args) { System.out.println(""); } } 영..
# 썬 마이크로시스템즈에서 제임스 고슬링이 팀원들과 같이 개발한 객체 지향적 프로그래밍 언어 > 1991년 시작 ~1995년 그린 프로젝트를 발표 > 가전기기에서 동작하는 프로그램으로 개발했지만 현재 웹 애플리케이션 개발에 사용되고 있다. # 유닉스 기반으로 문법적인 특성은 C 언어와 비슷 > 코드가 플랫폼 독립적이고 컴파일러는 특수한 바이너리 형태로 변환한다. # 프로그램을 실행하기 위해서는 JVM(Java Virtual Machine)이라는 특수한 환경이 필요하다. > 자바 바이트코드를 어느 플랫폼에서나 동일한 형태로 실행시킬 수 있다. # CPU나 운영 체제의 종류와 상관없이 JVM을 설치할 수 있는 환경에서는 실행 가능 > 웹 애플리케이션의 특성과 맞아떨어져 폭발적인 인기를 끌게 됨.
# JAR (Java Archive) # JAVA 응용 프로그램을 배포하기 위해 고안된 패키지 파일 형식 # 컴파일 된 Java 클래스 파일과 MANIFEST와 같은 파일들이 포함하며, 기본적으로 ZIP 아카이브 형태 # AAR (Android Archive) # Android 라이브러리 프로젝트의 바이너리 배포판 # Java 클래스 파일을 포함하는 Jar + 리소스 파일 ( res ) 들도 포함 # DEX (Dalvik Excutable) # DVM(Dalvik Virtual Machine)을 위한 실행 파일 # Dex 컴파일러에서 JVM 바이트코드 -> DVM 바이트코드로 변환 -> 모든 클래스파일들을 Dex 바이너리 파일로 통합 # APK (Android Application Package) # A..