天天看點

java之基礎概念

java之基礎概念

1、java的核心機制

1、Java虛拟機JVM

2、代碼安全監測

3、垃圾收集機制GC

Java虛拟機JVM

作用:讀取并處理經過編譯的位元組碼class檔案

注:這也是java能跨平台原因,java編譯的class檔案都相同,通過不同作業系統上的不同java虛拟機,再轉換成适應平台的指令。

java虛拟機規範定義了:

指令集
寄存器集
類檔案結構
堆棧
垃圾收集堆
記憶體區域      

Java運作環境(JRE)

JRE(the java runtime environment)JRE = JVM+API(lib)

JRE運作程式時的三項主要功能:

加載代碼:由class loader完成
校驗代碼:由bytecode verifier完成(代碼安全監測)
執行代碼:由runtime interpreter完成(解釋器)      

Java自動垃圾回收技術

垃圾回收(garbage collection)在c/c++等語言中,由程式員負責回收無用記憶體系統級線程跟蹤存儲空間的配置設定情況在jvm的空閑時,檢查并釋放那些可被釋放的存儲器空間程式員無須也無法精确控制和幹預該回收過程

java JDK

JDK(java開發工具包)也是就説

JDK = JRE+tools

JRE = JVM+API

JDK提供的工具:

Java編譯器javac.exe
Java執行器java.exe
文檔生成器javadoc.exe
Java打包器 jar.exe
Java調試器 jdb.exe      

2、面向對象的程式設計

java是一款純的面向對象的程式設計語言。

與C++語言相比

無直接指針操作

自動記憶體管理

資料類型長度固定(跨平台的要求)

不用頭檔案

不包含結構和聯合

不支援宏

不用多重繼承(換成了接口)

無類外全局變量

相對于C++--

對象

面向對象的程式設計,首先要明白什麼是對象。對象(object)具有兩方面的含義:

在現實世界中:是客觀世界的一個實體
在計算機世界中:是一個可辨別的存儲區域      

将對象抽象出來就是類(class)類:具有共同屬性的 行為的對象集合,它包含:

屬性:變量(字段field)
行為:函數(方法method)      

類和對象的關系

類是對象的抽象(模闆)對象是類的執行個體

注:類和對象有時都稱“對象”,為明确起見,後者稱為“對象執行個體

面向對象的三大特征

封裝性

1、子產品化:将屬性和行為都封裝在類中,程式定義很多類。

2、資訊隐蔽:将類的細節部分隐藏起來,使用者隻通過受保護的接口通路。

繼承性

父類和子類直接共享資料和方法,屬性和方法不用寫第二遍

好處:更好的進行抽象與分類增強代碼的重用率提高可維護性

多态性

不同的對象收到同一個消息(調用方法)可産生完全不同的效果實作細節則由接收對象自行決定實作了程式的可維護性