目前分類:Java物件導向技術 (34)

瀏覽方式: 標題列表 簡短摘要

插入圖片: CL01.jpg

Public:

文章標籤

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

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

class ball:

文章標籤

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

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

補充class庫:FunInit

文章標籤

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

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

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

文章標籤

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

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


import java.awt.*;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;
public class Init {
        /*polymorphism*/
        public static void InitWin(Frame v){
                v.setSize(1000,800);
                v.setLocation(500,100);
                v.setLayout(null);
                v.setVisible(true);
        }
        
        public static void addWinListen(Frame v){
                /*Interface*/
                v.addWindowListener(
                                new WindowListener(){
                                        /*WindowListener Method*/
                                        public void windowOpened(WindowEvent e) {}
                                        public void windowClosing(WindowEvent e) {v.dispose();}
                                        public void windowClosed(WindowEvent e) {}
                                        public void windowIconified(WindowEvent e) {}
                                        public void windowDeiconified(WindowEvent e) {}
                                        public void windowActivated(WindowEvent e) {}
                                        public void windowDeactivated(WindowEvent e) {}
                                }
                );
        }
        
        public static void setButton(Button b, int weigh, int height, int x, int y){
                b.setSize(weigh,height);
                b.setLocation(x,y);
        }
}

文章標籤

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

本章重點:

  1. 善用物件導向功能,透過class(類別)中的method(方法)傳遞,減少宣告時的繁複程式碼。(method(方法)的功能類似於C語言function(函數)的存在)
  2. Polymorphism多型:當子類別互相傳遞時會有衝突,此時可以將改成透過共通的父類別來傳遞
  3. implements Interface,實作界面除了直接在class實作之外,也能在event物件註冊時實作出來

請看以下說明:

文章標籤

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

用Java製作小畫家~

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

文章標籤

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

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

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

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

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


import java.awt.*;

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

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

import java.awt.*;

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

Interface: MouseListener可以實作多種滑鼠事件、WindowListener可以得到關閉視窗的功能

 

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

Java是單一繼承設計,也就是只能繼承extends一個物件,以此減少複雜度;但可以透過界面implements功能來擴充增加變化

Frame是視窗功能的類別、ActionListener是真側滑鼠行為的型別

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

在此介紹一個Java裡的現成串列

add是增加一個資料到尾巴

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

說明:其實我的下界值、上界值可以直接裝在陣列裡,指是這樣不易解讀程式碼功能,所以我刻意用上下界值來表示

public class GuessNumber {

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

核心要點:類神經網路、AI都是讓電腦運算"儲存好所有可能解",然後逐件篩選去除

所以我們要給AI製作buffer來儲存可能的解

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

流程:

電腦隨機取得一組答案

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

package p007;

public class c1A2B2_2 {

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

Java是動態空間分配,當程式開始run才隨著要求分割空間,並非一開始就劃定空間給予
並且Java的二維陣列是先製造第一欄,隨及補上每一列      

public static int[][] Make2DArray(int row,int column)
        {
                int[][] a = null;
                a = new int[row][column];
                for(int i=0;i<column;i++)
                {a[i]=new int[row];}
                
                return(a);
        }
        
        
public static void main(String[] arg)
        {
                int[][] b=null;
                b = Make2DArray(4,4);
                b[3][3]=1;
                
        }

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

split使用說明,()內加入用來分割token的符號,便會以此作分割

    public static void main(String[] a)

文章標籤

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

do-while迴圈是後測試迴圈,表示內容最少執行次數是一次

while、for迴圈是前測試,會先判斷才執行內容,所以內容最少執行次數是零次

文章標籤

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

1 2