------

本章重點,理解switch的結構,了解如何依判斷式範圍判斷答案

------

程式設計初學者應該會碰到下面這個難題,if-else依變數範圍作條件判斷很值觀(如下式):
if(input<50){...;}

Kuihao 發表在 痞客邦 留言(0) 人氣()

手機愛批批相機01.PNG

複習完Java之後,期中考結束,終於開始進入Android手機程式開發啦!

使用Android Studio,在裡面看到熟悉的Java語言真是太開心啦~

上了這麼多程式設計、資料結構、演算法、作業系統,終於有比較實際的東西了

但這次的開發紀錄不是用Android Studio,而是MIT的App Inventor積木程式。

原因是Android Studio實在太愛更新了,操作及運作又慢,上了幾堂課老師看大家一副很無聊的樣子,於是開了App Inventor讓大家玩一玩,建立信心。

Kuihao 發表在 痞客邦 留言(0) 人氣()

插入圖片: CL01.jpg

Public:

Image im = null;

於建構子寫入語法:
im=Toolkit.getDefaultToolkit().createImage(this.getClass().getResource("CL01.jpg"));

Kuihao 發表在 痞客邦 留言(0) 人氣()

製作如螢幕保護程式會看到的球球動畫,碰到邊界反彈

class ball:

x, y是球的圓心坐標, r是半徑長, R是直徑長, cr是球的顏色, dx, dy是移動的向量分量, bx1, bx2, by1, by2是邊界

在建構子裡面設定坐標、移動向量(用while迴圈,保證向量不為零)、直徑、顏色、邊界值

製作顯示方法(show) 及 移動方法(move)

Kuihao 發表在 痞客邦 留言(0) 人氣()

此程式重點在thread的run執行速度太快,需要透過Thread.sleep來放慢速度,Thread.sleep需要透過try-catch來保護,處理利外狀況

補充class庫:FunInit

import java.awt.*;
import java.awt.event.*;
public class c001 extends Frame implements Runnable{

Kuihao 發表在 痞客邦 留言(0) 人氣()

實作Runnable界面,可以使用Thread 執行緒,透過(Thread).start(); 會進入run()方法

run()等同於第二個main、第二個虛擬CPU,可以在內部同時執行兩個程式,達到多工的效果

補充class Init: 按我

import java.awt.*;
import java.awt.event.*;

Kuihao 發表在 痞客邦 留言(0) 人氣()

class Init 是用來自動設定好Size、Location、visable等等的類別,可以減少主要類別裡的程式複雜度

import java.awt.*;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;
public class Init {

Kuihao 發表在 痞客邦 留言(0) 人氣()

本章重點:

  1. 善用物件導向功能,透過class(類別)中的method(方法)傳遞,減少宣告時的繁複程式碼。(method(方法)的功能類似於C語言function(函數)的存在)

  2. Polymorphism多型:當子類別互相傳遞時會有衝突,此時可以將改成透過共通的父類別來傳遞

  3. implements Interface,實作界面除了直接在class實作之外,也能在event物件註冊時實作出來

Kuihao 發表在 痞客邦 留言(0) 人氣()

用Java製作小畫家~

本程式碼製作的小畫家有以下功能:畫筆(直線、點、方塊)、顏色(預設左鍵黑、預設右鍵白、每一刻都隨機色彩、使用者RGB自訂)、清空畫布

目前瑕疵:方塊功能只可以由左上往又下拉

import java.awt.*;
import java.awt.event.*;

Kuihao 發表在 痞客邦 留言(0) 人氣()

這是圈圈叉叉遊戲,目前還沒有計分機制

Tip: 用矩陣儲存格子是否被畫過;

用MouseListener的Pressed物件來抓取滑鼠所點選的位置,以得知要畫記在哪裡;

在paint()中,用if及布林變數來分階段畫出隔線與圈叉;

運用除法及家法運算 將同格子範圍內的x,y值統一訂至格子中心;

Kuihao 發表在 痞客邦 留言(0) 人氣()

Tip: Button 需搭配ActionListener的actionPerformed Event;repaint() 物件是先進入 update() 才進入 paint(),但是Frame預設的update()有自動清理的功能,因此要override update(),如此一來重繪製時才能保留上次的痕跡

import java.awt.*;
import java.awt.event.*;

public class mm extends Frame implements WindowListener, ActionListener{

Kuihao 發表在 痞客邦 留言(0) 人氣()

Paint()是Frame裡的凾式,當視窗產生,paint會將裡面全塗成白色,現在我們能覆寫,讓他劃出其他東西

import java.awt.*;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;

Kuihao 發表在 痞客邦 留言(0) 人氣()

Blog Stats
⚠️

成人內容提醒

本部落格內容僅限年滿十八歲者瀏覽。
若您未滿十八歲,請立即離開。

已滿十八歲者,亦請勿將內容提供給未成年人士。