【Head First Java 读书笔记】(一)基本概念
Java的工作方式
?
你要做的事情就是會編寫源代碼
?
Java的程序結構
類存于源文件里面
方法存在類中
語句存于方法中
剖析類
當Java虛擬機啟動執行時,它會尋找你在命令列中所指定的類,然后它會鎖定像下面這樣一個特定的方法:
public static void main(String[] args){//code }接著java虛擬機就會執行main方法在花括號間的函數所有指令。每個Java程序最少都會有一個類以及一個main()。每個應用程序只有一個main()函數
?
編寫帶有main()的類
在Java中的所有東西都會屬于某個類。源文件為.java,編譯之后成為新的類文件.class ,真正被執行的是類。
總之main()就是程序的起點。不管你的程序有多大(不管有多少個類)一定會有一個main()來作為程序的起點。
?
QAQ
為何所有的東西都得包含在類中?
因為Java是面對對象的語言,它不像以前的程序語言那樣。類是對象的藍圖,而Java中的絕大多是東西都是對象。
每個類都需要加上一個main()嗎?
一個程序只要一個main來作為運行。
其他語言可以用整數類型(0代表)來做判斷,Java里面也可以么?
不行,Java中的integer與boolean兩種類型并不相容。
專家術語學習機
package chapter1;public class PhraseOMatic {public static void main(String[] args) {String[] wordListOne = { "24/7", "multiTier", "30,000 foot", "B-to-B","win-win", "front-end", "web-based", "parvasive", "smart","sixsigma", "critical-path", "dymatic" };String[] wordListTwo = { "empowered", "sticky", "value-added","oriented", "centric", "distributed", "clustered", "branded","outside-the-box", "positioned", "networked", "focused","leveraged", "aligned", "targeted", "shared", "cooperative","accelerated" };String[] wordListThree = { "process", "tippingpoint", "solution","architecture", "core competency", "strategy", "mindshare","portal", "space", "vision", "paradigm", "mission" };int oneLength = wordListOne.length;int twoLength = wordListTwo.length;int threeLength = wordListThree.length;int rand1 = (int) (Math.random() * oneLength);int rand2 = (int) (Math.random() * twoLength);int rand3 = (int) (Math.random() * threeLength);String phrase = wordListOne[rand1] + " " + wordListTwo[rand2] + " "+ wordListThree[rand3];System.out.println("What we need is a " + phrase);}}random()方法返回介于0到1之間的值。
?
編譯器與JVM誰比較重要?
編譯器就是把源碼編譯成二進制代碼,即字節碼,并檢查語法錯誤,程序員不可能自己去寫二進制的代碼,所以需要編譯器。Java是個強類型的語言,這代表編譯器不能容許變量保存類型的數據,這是很關鍵的類型安全性功能,編譯器能讓大部分的錯誤在到你那邊之前就被抓到,有些數據類型的錯誤會在運行時發生,但這也是為了要容許動態綁定這樣的功能。Java可以在執行期引起連程序員也沒有預期會碰到的類型,所以我編譯器保留一些運用性,編譯器的工作就是確保鐵定不能跑的東西不會過關。
但是如果沒有JVM Java程序就無法啟動
?
轉載于:https://www.cnblogs.com/six-moon/p/4667082.html
總結
以上是生活随笔為你收集整理的【Head First Java 读书笔记】(一)基本概念的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: matlab 点云曲率,点云数据的主曲率
- 下一篇: cpc安装 mysql_专利电子申请客户