四、基礎程式設計
1.畫兩個矩形,一個是普通的未填充的矩形,另一個是圓角為20像素的填充矩形。
import java.applet.*;
import java.awt.*;
public class Rect extends Applet {
public void paint(Graphics g) {
g.drawRect(20,20,60,60);
g.fillRoundRect(80,80,100,100,20,30);
}
}
2.編寫一個Application,鍵盤輸入一個字母,加1後輸出到螢幕。
public class App6 {
public static void main(String[] args){
try{
System.out.print("請輸入一個字元:");
char c = (char)(System.in.read() + 1);
System.out.println("剛輸入的字元加1後為:"+c);
} catch(java.io.IOException e) {}
}
}
3.顯示一行字元串的簡單Java Applet。(一行字元串為:“您好,Java 程式!”)
import java.applet.Applet;
import java.awt.Graphics; //加載系統類Graphics
public class Welcome2 extends Applet {
public void paint(Graphics g) {
g.drawString("您好,Java 程式!",25,25);
}
}
4.實作第一個簡單的應用程式:列印一行文字。(一行文字為:“您好,Java 程式!”)
public class Welcome1 {
public static void main(String args[]){
System.out.print("您好,Java 程式!");
}
}
五、使用Java語言編寫程式
1.建立一個圖形使用者界面。包括一個按鈕、一個文本框,采用順序布局。視窗為可視、大小為400×400,要對按鈕、文本框進行動作監聽。編寫程式。
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class ButtonText extends JFrame implements ActionListener {
JTextField tf = new JTextField(15);
JButton bt = new JButton("ok");
public ButtonText() {
super("圖形使用者界面架構"); //調用父類具有相同形參的構造方法
Container c = getContentPane(); //獲得視窗的内容顯示層
c.setLayout(new FlowLayout()); //采用順序布局
c.add(tf);
c.add(bt); //添加元件
setSize(400,400);
setVisible(true); //顯示視窗界面
bt.addActionListener(this); //給元件加監聽
}
//事件處理程式
public void actionPerformed(ActionEvent e) {
tf.setText("Java是世界上最好的語言!");
}
public static void main(String args[]) {
new ButtonText();
}
}
2.編寫Applet程式,包含三個标簽,其背景分别為紅、黃、藍三色。
import java.applet.*;
import java.awt.*;
public class LabelRYB extends Applet {
Label label1 = new Label("RedLabel");
Label label2 = new Label("YellowLabel");
Label label3 = new Label("BlueLabel");
public LabelRYB() {
setLayout(new FlowLayout());
add(label1);
label1.setBackground(Color.red);
add(label2);
label2.setBackground(Color.yellow);
add(label3);
label3.setBackground(Color.blue);
}
}
3.定義一個接口jiekou。接口完成2個變量(x、y)、一個方法的說明(方法名為output)。定義3個類。類classA實作接口中output()完成2個變量加法運算,類classB實作接口中output()完成2個變量減法運算,類exam輸出運算結果。
例如輸出結果可以如下:
x+y=40
x-y=20
interface jiekou {
public abstract int output(int x, int y);
}
class A implements jiekou{
public int z;
public int output(int x, int y) {
z = x + y;
return z;
}
}
class B implements jiekou{
public int z;
public int output(int x, int y) {
z = x - y;
return z;
}
}
public class exam {
public static void main(String[] args) {
A a = new A();
a.output(30, 10);
B b = new B();
b.output(30, 10);
System.out.println("x+y=" + a.z);
System.out.println("x-y=" + b.z);
}
}
4.通過繼承Thread類實作多線程的方法是首先設計Thread的子類。用new建立二個線程執行個體,用start()方法進行啟動,将執行權交給run()。二個線程名字分别為線程1和線程2,要輸出線程的次數(10次)和線程的名字。
public class TwoThreads_Test {
public static void main(String args[]) {
Thread t1 = new Thread_Test("線程1"); // 第一個線程的名字為"線程1"
Thread t2 = new Thread_Test("線程2"); // 第二個線程的名字為"線程2"
t1.start();
t2.start();
}
}
class Thread_Test extends Thread {
public Thread_Test(String str) {
super(str); // 調用其父類的構造方法
}
// 重寫run方法
public void run() {
for (int i = 0; i < 10; i++) {
// 列印次數和線程的名字
System.out.println(i + " " + getName());
try { // 線程睡眠,把控制權交出去
sleep((int)(Math.random() * 1000));
} catch (InterruptedException e) {}
}
// 線程執行結束
System.out.println("執行結束!" + getName());
}
}