1. (15分) 问题描述:使用循环来计算数列1 + 12 + 23 + … + 99100 之和的代码。提示:可以采用如下程序框架:(仅供参考,也可用其它做法实现)
public class MyClass
{
public static void main(String[] args) {
}
}
2. (20分) 编写多线程程序。
程序描述:这个简单的 Java 程序完成三项不相关的任务。这样的程序有单个控制线程控制着这三个任务之间线性地移动。因此,程序在访问数据库之前必须等待打印机完成打印文件的任务。请改进此程序,使它成为多线程的。
class MyClass {
static public void main(String args[]) {
print_a_file();//打印文件
access_database();//访问数据库
draw_picture_on_screen();//显示图片
}
static void print_a_file()
{
system.out.println("printing_a_file");
}
static void access_database()
{
system.out.println("accessing_database");
}
static void draw_picture_on_screen()
{
system.out.printl("drawing_picture_on_screen");
}
}
提示:程序架构参考如下(仅供参考,也可用其它做法实现)。
public class MyThreadClass{ //入口主类
public static void main(String[] args) {
PrintThread printThread = new PrintThread(); //打印线程对象
...
}
}
class PrintThread extends Thread{
...
}
3. (20分) 编写程序。
程序描述:
编写一个抽象类Vehicle类(汽车类),包含:
属性:protected int Wheel; //汽车轮子个数
属性:protected int Weight; //汽车重量
构造方法:public Vehicle(int wheel,int weight){} //接收轮子个数和重量值
抽象方法:public abstract void Speak( ) //输出汽车的喇叭声音
编写一个Moveable接口,包含:
方法:double MoveSpeed(); //用于返回最大的行驶速度
编写Car(小轿车)类和Truck(卡车)类,都继承Vehicle类和实现Moveable接口;
编写测试类,打印输出小轿车和卡车的轮子个数、重量和喇叭声音以及最大行驶速度。