iT邦幫忙

java相關文章
共有 1188 則文章

My Project Day30 | 30 天學習總結:成果展示與未來學習規劃

經歷了一連串的實作與調整,我們的 Tic-Tac-Toe(井字棋) Swing 遊戲專案終於正式劃下完美的句點! 從最開始建立一個空無一物的黑色視窗,到加入 3...

My Project Day29 | 遊戲開發(八)

今天要設定平手的情況。 新增回合計數器:turns 變數首先,我們在類別屬性區塊中新增一個 turns 變數來計算總下棋步數: int turns = 0...

My Project Day28 | 遊戲開發(七)

先前做了水平判定,今天要來做垂直判定和對角線判定。 Part 1.垂直判定 checkWinner() 垂直方向檢查繼水平檢查之後,我們需要用類似的邏輯來檢...

My Project Day27 | 遊戲開發(六)

在前面的單元中,我們成功讓棋盤具備了互動與輪流下棋的功能。今天我們要讓連成一線時(橫向)停止遊戲。 新增 gameOver 狀態控管首先,我們在類別成員變數...

My Project Day26 | 遊戲開發(五)

在前面的單元中,我們完成了遊戲視窗與 3x3 棋盤按鈕的靜態外觀。今天我們要迎來最關鍵的互動邏輯——ActionListener讓玩家能夠點擊格子,並實現 X...

My Project Day25 | 遊戲開發(四)

在前面的單元中,我們完成了遊戲視窗框架以及頂部的標題面板。今天我們要進入這個專案最核心的部分——在 3x3 網格面板中放入互動按鈕,並初始化遊戲狀態變數。...

My Project Day24 | 遊戲開發(三)

在完成了頂部文字標題面板後,今天我們要進入遊戲畫面的核心部分——建立 3x3 九宮格棋盤的底座面板。 宣告棋盤面板:首先,我們在類別屬性區塊新增一個 boa...

My Project Day23 | 遊戲開發(二)

在上一篇成功建立了視窗,這篇要做視窗頂部標題。 發現上一篇忘記給遊戲視窗加標題了,今天要把它補上去: JFrame frame = new JFrame(...

My Project Day 22 | 遊戲開發(一)

從今天開始,我們要將前面 21 天所學到的所有 Java 核心觀念(類別、繼承、多型、ArrayList、二維陣列、例外處理與檔案讀寫)全部串聯起來,製作一個簡...

技術 lesson 22(S4): 實現JAVA介面的另一種方式:jmake-proxy

TL;DR jmake-proxy可以把Java介面方法的實作方式和函式本身分開,並透過lisp-this傳入狀態。implementation可以是函式、ha...

My Project Day 21 | Java 檔案寫入與讀取:FileWriter 與 Scanner 基礎

在前面學完了隨機數與例外處理之後,這篇要來學習Java中的檔案讀寫(File I/O)基礎,學會如何把資料寫入文字檔中,以及如何從文字檔中把資料讀取出來。...

My Project Day 20 | Java 隨機數生成:Random 類別應用

在前面學完了例外處理(try-catch)之後,這篇要來學Java中的內建小工具:Random類別,專門用來在程式中生成各種隨機數值。 為什麼需要 Ran...

My Project Day 19 | Java 例外處理:try-catch 捕捉錯誤與防護

在前面的單元中我們學會了各種資料結構與陣列。但在實際寫程式時,常常會遇到一些預料之外的狀況(例如:使用者不小心輸入了文字而不是數字、或者陣列讀取超過範圍)。如果...

My Project Day 18 | Java 二維陣列(2D Array)

在上一篇我們學到了能夠動態增減的一維動態陣列 (ArrayList),但在某些場景下(例如棋盤、地圖、遊戲畫面),我們需要用到「行與列(X 軸與 Y 軸)」的矩...

My Project Day 17 | Java 動態陣列:ArrayList 的建立與基本操作

在前面的單元中我們學過了傳統的固定長度陣列(Array)。但在實際開發程式時,若需要改變陣列的長度就被限制住了,因此今天要學的動態陣列就可以解決這個問題。...

My Project Day 16 | Java 物件導向:多型(Polymorphism)與方法覆寫(Override)

在上一篇學會了繼承機制,今天要學的是多型和方法覆寫。 什麼是方法覆寫 (Override)? 當子類別繼承了父類別的方法後,如果覺得父類別原本的方法寫得...

My Project Day 15 | Java 物件導向:繼承(Inheritance)機制

在上一篇了解到了建構子,這篇要學的是繼承機制。 什麼是繼承 (Inheritance)? 繼承可以讓一個類別(子類別 / Subclass)去沿用另一個...

My Project Day 14 | Java 類別建構子(Constructor)與初始化

在上一篇討論了封包,這篇要學物件導向中的關鍵:建構子。 什麼是建構子 (Constructor)? 是一種特殊的方法(Method),會在使用 new...

My Project Day 13 | Java Package 封包、權限控制

上一篇學到了類別方法的回傳值,今天要學Package 封包和權限控制。 封包 Package:一個程式可能是由很多個檔案、類別組成的,封包就是把檔案做分類...

My Project Day 12 | Java Class 類別方法:回傳值

在上一篇了解了class類別方法的基礎觀念,這篇會學回傳值的部分。 方法的回傳值 在方法名稱前面定義回傳值資料型態,方法區塊中使用return資料中段執...

My Project Day 11 | Java Class 類別方法:基本觀念

在上一篇學到了class的類別屬性基本觀念,今天要學的是類別方法基本觀念。 類別的組成:包含屬性和方法。 -> 設計類別中包含的資料和功能。 類...

鐵人賽 Software Development DAY 27

技術 lesson 18 (S2): 怎麼打包 CalcFX 成可執行檔?

TL;DR 前一篇已經讓 CalcFX 成為可啟動的 JAR,但它還沒有真正做到「點一下就能執行」的程度。最關鍵的問題是:執行時仍然依賴外部的 JavaFX S...

My Project Day 10 | Java Class 類別屬性

在上一篇學到了class類別的基礎觀念,今天這篇是要學類別屬性。 類別的組成:設計類別中包含的資料和功能。 類別的定義中,主要包含屬性和方法。 定義...

My Project Day 09 | Java Class 類別的基礎概念

在上一篇學到了陣列的用法,將陣列和for迴圈搭配使用。這篇要學的是class類別的基礎概念。 類別 class 類別在程式中的角色:(1.)組織程式的基...

My Project Day 08 | Java 陣列資料型態 Array

在上一篇已經學會了迴圈和迴圈指令是如何應用的,在這篇要學的是陣列,也會學到陣列與迴圈的搭配使用。 陣列 Array:資料型態的一種,用來存放許多同型態的資料...

鐵人賽 Software Development DAY 26

技術 lesson 17 (S2): 怎麼打包 CalcFX 成 JAR 檔案?

TL;DR 前面幾篇已經把 JavaFX 的畫面、FXML 的事件、以及 ABCL 的計算邏輯接起來。這一篇不再寫新功能或調整架構,要準備把已經能跑的程式整理成...

My Project Day 07 | Java 流程控制:迴圈指令 continue 和 break

在上一篇學習了迴圈基礎,今天要學和迴圈搭配的指令。 迴圈指令 強制返回迴圈開頭,進入下一圈。continue; 強制結束迴圈。break; co...

鐵人賽 Software Development DAY 25

技術 lesson 16 (S2): 透過 JAVA 使用 ABCL,實現 CalcFX 邏輯

TL;DR 前一篇已經用 Java 載入同一份 FXML,並確認事件可以從按鈕一路進入 Java Controller。這一篇則把它接到真正的 Common L...

My Project Day 06 | Java 流程控制:迴圈基礎

在上一篇學到了判斷式的使用,這篇要學的是迴圈的基礎。 while 迴圈:滿足某個條件,執行程式區塊,一直重複執行直到條件不滿足為止。 基礎語法 whi...

My Project Day 05 | Java 流程控制:判斷式

在上一篇已經學會了java基本的運算符號,了解到Day02學到的資料型態的重要性。在這篇會學判斷式。 流程控制:程式最核心的運作邏輯。 判斷式(今天要學...