第一章學習筆記
一·教材學習內容總結
1、Java是一種跨平臺、面向物件的程式語言。
2、Java的網路地位
3、Java反編譯
4、兩種程式設計風格:Allmans風格(獨行)以及Kernighan風格(行尾)
5、使用Random類中的next..方法得到隨機均勻的隨機數。
//生成一個Random類物件random Random random=new Random(); //依次使用next..方法 boolean bo=random.nextBoolean(); int in=random.nextInt(1); double dou=random.nextDouble();
依次輸出bool、int、double的隨機數字:
6、使用intersects方法進行矩形碰撞測試
//碰撞測試方法A public boolean isHitA() { //先定義兩個與矩形A、B重合的Rectangle物件 Rectangle rA=new Rectangle(A.getX(),A.getY(),100,100); Rectangle rB=new Rectangle(B.getX(),B.getY(),100,100); //使用intersects方法進行碰撞判斷 if(rA.intersects(rB)) { return false; }else { return true; } } //碰撞方法B,與碰撞方法A類似 public boolean isHitB() { Rectangle rA=new Rectangle(A.getX(),A.getY(),105,105); Rectangle rB=new Rectangle(B.getX(),B.getY(),105,105); if(rB.intersects(rA)) { //System.out.println("sdas"); return false; }else { return true; } }
操作的思想是將生成的兩個Rectangle物件rA、rB依次依附在矩形A、矩形B上,藉助intersects方法使矩形間產生碰撞現象。
二、教材學習中的問題和解決過程
暫無
三、學習思考與感悟
學習程式設計初時,字裡行間的程式碼在我看來,總是那樣的整齊規則而又深賦美感,雖然不太瞭解這些數字符號變換組合後的意義和奧妙,但總有一種思想始終縈繞在我腦海中:程式設計總是確切的,我們要盡力消除程式存在的各種隨機性,因為隨機代表著不穩定,不穩定的因素一旦增多,問題便會接踵而至。那時的我,還天真的認為不穩定因素是程式設計師們的大敵,雖然直到現在我還保留著這些思想,可比起那時的自己,這種過於絕對的思想多少還是改變了一點,漸漸認可了隨機性在應用方面不可或缺的特點。反過來說,一切事物都有兩面性,如何應用好這些事物,需要我們很長很長甚至是一生的時間去不斷摸索不斷領會,當然,這一切的起點都是從認知開始的。
隨機數就是隨機性的一個例項,看似不穩定的隨機數卻能夠為我們帶來許多便利。比如在某些多執行緒物件的行為控制中,隨機數的存在能夠使這些執行緒物件不受人為的控制,自由自在地行動,在各種各樣的迴圈語句中不斷地取得隨機數,不同的數字不同的組合間,到也似生命般的盈動。
Random類的知識在書本的p23有所提及,與我曾使用過的同類方法有所不同的是這個next....方法。
以往使用的方法:
this.direct=(int)(Math.random()*4);
Java包中的知識實在太多,即便是功能類似的方法也不計其數,立足當下,著眼未來,只有踏踏實實地走好每一步,不斷地學習新知識新內容充實自我,才能更好的掌握程式設計這門技能,在計算機的世界裡,不進則退。
四、學習進度條
程式碼行數(新增/積累) | 部落格量(新增/累計) | 學習時間(新增/累計) | 重要成長 | |
目標 | 7000行 | 30篇 | 400h | |
第一週 | 378/378 | 2/2 | 14/14 |