⑴ java飛機大戰實現了什麼技術
1 package cn.xiaocangtian.Util;
2
3 import java.awt.Frame;
4 import java.awt.Graphics;
5 import java.awt.Image;
6 import java.awt.event.WindowAdapter;
7 import java.awt.event.WindowEvent;
8
9
10 public class MyFrame extends Frame {
11
12 //載入窗口
13 public void launchFrame() {
14 setSize(Constant.GAME_WIDTH, Constant.GAME_HEIGHT); //設置窗口大小
15 setLocation(100, 100); //設置左上角坐標,開始位置, 也就是窗口開始位置
16 setVisible(true); //設置為可見(默認為不可見)
17
18 //啟動重畫線程
19 new PaintThread().start();
20
21 //匿名內部類---用來關閉窗口
22 addWindowListener(new WindowAdapter() {
23 @Override
24 public void windowClosing(WindowEvent e) {
25 System.exit(0);
26 }
27 });
28
29 }
30
31 //雙緩沖技術解決屏幕閃爍
32 private Image offScreenImage = null; //利用雙緩沖技術消除閃爍
33 public void update(Graphics g) {
34 if (offScreenImage == null)
35 offScreenImage = this.createImage(Constant.GAME_WIDTH, Constant.GAME_HEIGHT);
36
37 Graphics gOff = offScreenImage.getGraphics();
38
39 paint(gOff);
40 g.drawImage(offScreenImage, 0, 0, null);
41 }
42
43 /**
44 * 定義一個重畫窗口的線程類
45 * 是一個內部類(方便訪問外部類屬性)
46 */
47 class PaintThread extends Thread {
48 public void run() {
49 while (true) {
50 repaint(); //重畫
51 try {
52 Thread.sleep(40); //1s = 1000ms
53 } catch (InterruptedException e) {
54 e.printStackTrace();
55 }
56 }
57 }
58 }
59
60 }
復制代碼
⑵ Java飛機大戰控制方向
鍵盤的映射
⑶ 飛機大戰中用java寫boss機
飛機大戰中用java寫boss後發現事情遠沒有我想的這么簡單,多做。
⑷ 給我一個飛機大戰的java項目,能運行的
下面是代碼運行效果,下載地址點擊這里
⑸ java 會寫飛機大戰屬於入門嗎
會寫飛機大戰很不錯了,這部分屬於javase基礎的知識,但是很重要,面向對象,循環,控制語句,繼承,封裝,多態等知識都在裡面。而往後繼續的學習離不開這些基礎。雖然說屬於入門,但是如果熟練的掌握,那麼基礎就打的很牢,對題主後面的學習幫助很大,加油,已經很不錯了。
⑹ 寫了一個java swing的飛機大戰,但是碰撞檢測獲取坐標的地方出現了錯誤,求大神幫忙
你好!很高興為你回答問題。
首先,請原諒我指出你的錯誤。
錯誤一:int a[] =Integer.parseInt(jta.getText());
錯處:從jta獲取字元串後,轉換為整數,乃1個數,用數組存放可以,但不能像你這樣寫,你這樣寫是將一個整形數組初始化為一個整數。所以錯。。。
錯誤二:jtf.append(String.valueOf(max));
錯處:JTextField沒有append方法,無中生有。所以錯。。。
錯誤三:思路錯
錯處:將文本域中獲取的幾個數字,不加處理則提取其中數字作為整數數組,是不行的
修正如下:(在文本框中輸入幾個數字,請用空格隔開,有問題請追問)
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Exam3_7 {
public static void main(String[] args) {
FrameText ft = new FrameText();
ft.setVisible(true);
}
}
class FrameText extends JFrame implements ActionListener {
JTextField jtf;
JTextArea jta;
JButton jbt, jbt1;
FrameText() {
super("輸出最大數和最小數的程序");
Container con = getContentPane();
con.setLayout(new FlowLayout());
jta = new JTextArea("", 5, 10);
jtf = new JTextField(5);
jbt = new JButton("獲取最大數");
jbt1 = new JButton("獲取最小數");
jbt.addActionListener(this);
jbt1.addActionListener(this);
con.add(jta);
con.add(jtf);
con.add(jbt);
con.add(jbt1);
setSize(300, 300);
}
public void actionPerformed(ActionEvent e) {
String[] input = jta.getText().split(" ");
int[] a = new int[input.length];
for (int i = 0; i < input.length; i++) {
a[i] = Integer.parseInt(input[i]);
}
if (e.getSource() == jbt) {
int max = a[0];
for (int j = 1; j < a.length; j++) {
if (a[j] > max) {
max = a[j];
}
}
jtf.setText(String.valueOf(max));
}
if (e.getSource() == jbt1) {
int min = a[0];
for (int j = 1; j < a.length; j++) {
if (a[j] < min) {
min = a[j];
}
}
jtf.setText(String.valueOf(min));
}
}
}
⑺ 飛機大戰的簡單代碼(java)
public class Plane{
public static void main(String[] args){
System.out.print("飛機正在起飛.請稍後......");
System.out.print("情況緊急,飛機沒油了,請加油.......");
System.out.print("你的飛機墜落了,大戰結束.......");
}
}
⑻ java中。我要實現飛機大戰裡面,子彈的移動,簡單地說是敵機和英雄機發射子彈,怎麼實現這個功能求
首先創建四個類,敵機和英雄機子彈類,敵機類,英雄機類,類中定義各自的橫豎x y坐標屬性,值得注意的是,在寫構造的時候,子彈的構造需要傳入參數,因為子彈英雄機和敵機發出來的嘛。再定義兩種子彈移動方法。移動方法很好寫,子彈垂直方向發,x——就行了。再在main中調用就行了