標籤:其他 c++ 進入 靜態 load 完成 也有 virt env
2017-10-03 21:25:38
Java是一門物件導向程式設計語言,不僅吸收了C++語言的各種優點,還摒棄了C++裡難以理解的多繼承、指標等概念,因此Java語言具有功能強大和簡單易用兩個特徵。Java語言作為靜態物件導向程式設計語言的代表,極好地實現了物件導向理論,允許程式員以優雅的思維方式進行複雜的編程。Java也被戲稱為C++--。
一、Java三大平台
二、Java語言的特點
Java語言簡單。這裡的簡單是針對熟悉類似C++語言的程式設計人員來說的,因為它的文法和C++非常相似,但是它摒棄了C++中許多低級、困難、容易混淆、容易出錯或不常使用的功能,如運算子多載,指標運算,程式的預先處理,結構,多重繼承以及其他一些內容。同時還有自動記憶體管理,資料長度固定,
用Java語言編輯的來源程式的執行方式是採用先經過編譯器編譯,再利用解譯器解釋的方法來啟動並執行。它綜合瞭解釋性語言與編譯語言的眾多優點,使其執行效率較以往的程式設計語言有大幅的提高。
Java來源程式經過編譯器編譯,會被轉換成一種位元組碼(byte-codes)的目標程式,位元組碼的最大特點就是可以跨平台運行,即程式設計人員常說的“編譯一次,到處運行”。
Java的儲存分配模型是它防禦惡意代碼的主要方法之一。Java沒有指標,所以程式員不能得到隱蔽起來的內幕和偽造指標去指向儲存空間。更重要的是,Java編譯器不處理儲存安排決策,所以程式員不能通過查看聲明去猜測類的實際儲存安排。編譯的Java代碼中的儲存引用在運行時由Java解釋程式決定實際儲存地址。
Java位元組碼進入專門處理該內容的解譯器,首先必須經過位元組碼校正器的檢查,然後Java解譯器將決定程式中類的記憶體分布。
三、Java運行機制
Java三種核心機制:Java虛擬機器,代碼安全檢測,垃圾收集機制。
1、Java虛擬機器
Java語言編輯的來源程式的執行方法是先經過編譯器編譯,再利用解譯器進行解釋的方式來啟動並執行。
- Java虛擬機器(Java Virtual Machine,JVM)
2、Java運行環境(Java Runtime Environment:JRE)
JRE = JVM + API
JRE運行程式時的三項主要功能:載入代碼:由class loader 完成;校正代碼:由bytecode verifier 完成;執行代碼:由 runtime interpreter完成。
3、垃圾收集機制
4、Java開發套件(Java Development kit:JDK ;也有叫Software Development kit:SDK)
Java-Java語言