資策會|JAVA|複習01

複習囉!

上完兩週的課程共7天的課程,終於要開始進入物件導向的部分。不過基礎越穩越好啦!所以以下就就進行一些紀錄啦。
在這之前先小聊一下這兩週的心得。首先,教室位置怎麼分配?還記得第一天,班導師就拋出『先搶先贏』這個方法,於是從開班到現在,我都過著9點上課8點到教室先佔位置的習慣,然後開始預習,痾,我是說先去吃早餐然後在預習啦!不過也因如此結交了同樣想坐前排的好同學們,一起吃早餐然後再回教室預習。

廢話太多,進入正題!

第一章,JAVA導論。(下這標題會自帶全能住宅改造完王的BGM啊XD)

這章主要是介紹JAVA有哪些特性,相比C語言有哪些優點,James Gosling就用以下11個專業術語來對JAVA語言做摘要描述:
  • Simple
  • Object Oriented
  • Network-Savvy
  • Robust
  • Secure
  • Architecture Neutral
  • Portable
  • Interpreted
  • High Performance
  • Multithreading
  • Dynamic
英文那麼多我看不懂,說明一下好嗎? 不好,但我要說舉一個例子。

今天,阿明他是一個白手起家的youtuber,他今天想某法國youtuber合作feat一支影片,因此認真去學習法文,故事到這邊結束了。

恩,不是啊!明明有估狗翻譯!幹嘛學法文?沒錯,這邊就提到JAVA語言的特性Write once,run anywhere。今天我如果是阿明,用中文寫好企劃案然後喂狗,我就能來俄德法美日奧義英八國聯軍feat啦!讚!


第二章,第一隻Java程式。

這邊主要是在使用IDE進行第一隻Hello World!程式之前。所做的一些事,可能有些人認為趕快跑進度啦,還在那邊了解環境,小大一膩?不過說實在的,我覺得有必要啦!學會用IDE跑之前,用文件檔案直接撰寫第一隻Hello World!程式,才會知道多幸福啊!

這章的重點在,藉由一字一字的打你第一隻Hello World!程式,來了解Java程式的基本形式:
  • 類別宣告
  • 屬性變數宣告與初始化
  • 方法宣告
  • 註解說明
public static void main(String[] args){} 此方法為程式執行的進入點

使用的IDE是eclipse。

第三章,定數、變數、常數與運算子。

基本資料型態(Primitive Data Types)

浮點數及整數型態

double>float>long>int>short>byte

上面會這樣排序是關係到自動轉型與強制轉型那邊喔!越左側位階越高

例如:
double a,b; 
int c ;
 這句是成立的喔!
a=b+c;
但這樣則不成立,如過很想成立只能強制轉型啦!
c=a+b;
我轉!! 登登!
c=(int) (a+b);
這邊要再注意一下,(a+b)為何要括號起來? 先乘除後加減喔!!

其他型態

boolean、char

布林就true,false。

char字元也蠻有趣的。可以去查Unicode Table來自行玩玩。

關於淺規則,我說變數命名的淺規則啦!

  • 每個變數名字都代表著記憶體中某個記憶體位址
  • 變數名稱:
    • 可以用A-Z,a-z,0-9,_(底線),$,,長度不限制
    • 第一個字不可以是數字
    • 大小寫不同(case-sensitive)
  • 不能是關鍵字(keyword)或稱作保留字
  • 變數、方法名稱以小寫開頭,類別名稱為大寫開頭
    • 如果名稱由不同字組成,建議後面的首字元為大寫,如myName
變數種類與有效範圍

不囉唆。看表格!


運算子

主要有
  • 算數運算子
  • 遞增遞減運算子
  • 指定運算子
  • 關係運算子
  • 條件運算子
  • 位元運算子
  • 移位運算子
  • 三元運算子(if判斷式的表現方式)
個人覺得最實用且有趣的是指定運算子的“=”,這個“=”並非數學上“等於”的意思,而是“指定”的意思。在讀程式碼時,我都唸作將右邊處理一番後指定給左邊,這樣好像有助於思考及理解呢!

第四章,流程控制。


程式執行流程一般會由以下三種結構所組成:
  • 循序結構(sequence)
  • 選擇結構(selection)
  • 重複結構(iteration)

基本上是if , if...else , while , do...while , switch的介紹,這邊也算熟悉。要搞清錯彼此的一些差異,以我自己實作來說。
if vs if..else
奇怪、幹嘛比較這兩個呢?因為在實作時,常常因為沒加else而出現問題。現在在一個迴圈裡加入判斷式時,就要特別注意了。
還有,
while vs do...while
一個是判斷完再跑、另一個是先跑一次在判斷。

小結

大致來說,還輕鬆愉快,有把基礎的部份有在加固一番。所以,基礎的部分不要以會自己有先自學而在上課時跳過,好險我沒有這麼做。
第一次以這種形式把複習的內容打出來,實在是打到有點煩躁哈哈,也體會到要把所學的東西整理過在表達出來是不容易的,尤其是打一篇文章來更是要事先整理過的(雖然我是邊複習邊打)。
打這一篇的意義是在於警惕自己。不要因為『自認為』東西簡單,聽的當下都會而不去複習,遙想當初的高中大學。尤其,這次付了大把的錢去讓自己的職涯轉個彎,更是要好好把握這半年。
以上,心得多於內容複習的複習文在此先告一段落。





留言