jdk目錄的介紹:
? ? ? ? ? ?? bin: 存放的是java的開發工具。
? ? ? ? ? ?? db : JDK7附帶的一個輕量級的數據庫,名字叫做Derby。
? ? ? ? ? ?? include :存放的調用系統資源的接口文件。
? ? ? ? ? ? ? jre : java運行環境
? ? ? ? ? ? ? lib : 核心類庫。
? ? ? ? ? ?? src.zip : java源代碼
環境變量配置參考最新文章:
https://www.cnblogs.com/boringwind/p/8001300.html
oracle官網下載的JDK包含了JRE。配置環境變量時可以不用配置JRE,只配置JDK即可。
即第四部:設置Path環境變量,在列表中選擇Path,點擊下方的“編輯”按鈕,在彈出的窗口中只需添加如下信息:%JAVA_HOME%\bin;,然后點擊“確認”按鈕即可。不用再添加%JAVA_HOME%\jre\bin;
對jvm、jre、jdk的理解:
? ? ?? JVM:Java虛擬機
? ? ?? JRE:java運行環境? jre = java虛擬機+核心類庫
? ? ?? JDK:Java開發工具集? jdk = jre + java開發工具
構造函數:
構造函數的作用: 給對應的對象進行初始化。
構造函數的定義的格式:
修飾符? 函數名(形式參數){
? ? ? ? ? ?函數體...
?}
構造函數要注意的細節:
1. 構造函數 是沒有返回值類型的。
2. 構造函數的函數名必須要與類名一致。
3. 構造函數并不是由我們手動調用的,而是在創建對應的對象時,jvm就會主動調用到對應的構造函數。
4. 如果一個類沒有顯式的寫上一個構造方法時,那么java編譯器會為該類添加一個無參的構造函數的。
5. 如果一個類已經顯式的寫上一個構造方法時,那么java編譯器則 不會再為該類添加 一個無參 的構造方法。
6. 構造函數是 可以在一個類中以函數重載 的形式存在多個 的。
疑問:創建對象時,jvm就會調用到對應的構造方法,那么我們以前沒有學構造方法,那么
以前創建對象時,jvm是否 也會調用構造方法呢?如果有?構造方法從何而來呢?
會調用, java編譯器在編譯的 時候給加上去的。
jdk提供了一個java開發工具(javap.exe)給我們進行反編譯的。
javap 反編譯工具的使用格式:
javap -c -l -private 類名
疑問: java編譯器添加 的無參構造方法的權限修飾符是 什么?
與類的權限修飾是一致的。
構造函數與普通函數的區別:
? ? ? 1.構造函數沒有返回值類型
? ? ? 2.構造函數函數名必須跟類名相同
? ? ? 3.構造函數在創建對象的時候由jvm調用。普通函數是我們使用對象調用的,一個對象可以調用多次普通的函數
? ? ? 4.作用:構造函數用于初始化一個對象。普通函數用于描述一類事物的公共行為。