java复习题及答案

的变量必须在声明时给定初值,而在以后的引用中只能读取,不可修改。被声明为final的方法也同样只能使用,不能重载。

Finally是在异常处理时提供 finally 块来执行任何清除操作。如果抛出一个异常,那么相匹配的 catch 子句就会执行,然后控制就会进入 finally 块(如果有的话),只要有finally语句块,无论程序如何运行,它都必然被执行到。

3、简述对象、类的概念。

对象是类的实例,类是对象的抽象

4、简述封装、继承性和多态性的概念。

5 。 线程有几种实现方法,都是什么?

答:两种,一种是继承Thread类,另一种是实现Runnable接口。

6. 在java中一个类被声明为final类型,表示了什么意思?

答:表示该类不能被继承,意味着它不能再派生出新的子类,不能作为父类被继承,是顶级类。

六、程序设计

1. 编写一个字符界面的Java Application 程序,接受用户输入的10个整数,并输出这10个整数的最大值和最小值。 2. 编写一个学生类 Student ,要求:

(1) 学生类 Student 属性有:id : long型,代表学号

name : String类对象,代表姓名

age : int型,代表年龄

sex : boolen型,代表性别(其

中:true表示男,false表示女)

phone : String类对象,代表联系

电话

(2) 学生类 Student的方法有:

Student(long i , String n , int a , boolean s , long p) :

有参构造函数,形参表中的参数分别初始化学号、姓名、年龄、性别和联系电话。

int getAge() ( ) : 获取年龄作为方法的返回值。

boolean getSex( ) ( ) : 获取性别作为方法的返回值。 long getPhone ( ) : 获取联系电话作为方法的返回值。 public String toString( ) : 以 姓名:联系电话 的形式

作为方法的返回值。

3.设计一个动物类,它包含动物的基本属性。例如名称、大小、重量等,并设计相应的动作,例如跑、跳、走等。 答:

public class Animal{ private String name; private double weight; private int length; privateString sex; public void run(){

System.out.println(\ }

public void jump(){

System.out.println(\ }

public void walk(){

System.out.println(\ }

}

4利用面板(JPanel)设计图7.4所示的版面的容器结构,在窗口中放置五个标签,五个标签的摆放位置要求如图 。

import java.awt.*; //步骤1:导入程序所需的java包 import java.awt.event.*; import javax.swing.*;

//步骤2:声明面版容器类 public class Eg7_3{

public Eg7_3(){ //步骤3:编写该类的构造方法

JFrame f = new JFrame(\ //创建JFrame实例f。

Container contentPane = f.getContentPane();//创建内容面版实例

contentPane.setLayout(new GridLayout(2,1));//设置面版为网格布局管理器

JLabel[] label = new JLabel[5]; //创建标签对象数组

for(int i=0; i

label[i] = new JLabel(\标签 \ label[i].setBackground(Color.lightGray);

label[i].setBorder(BorderFactory.createEtchedBorder()); label[i].setOpaque(true);

}

JPanel panel1 = new JPanel(new GridLayout(1,1));/*创建面版容器实例*/

panel1.add(label[0]); //将第一个标签加到panel中

JPanel panel2 = new JPanel(new GridLayout(1,2));// 创建面版实例2

JPanel panel3 = new JPanel(new GridLayout(1,2));//创建面版实例3

panel3.add(label[1]); //把第2个数组元素加到panel3上 panel3.add(label[2]); //把第3个数组元素加到panel3上 JPanel panel4 = new JPanel(new GridLayout(2,1));// 创建面版实例4

panel4.add(label[3]); //把第4个数组元素加到panel4上 panel4.add(label[4]); //把第5个数组元素加到panel4上

panel2.add(panel3); //将面版容器panel3加到panel2上。

panel2.add(panel4); //将面版容器panel4加到panel2上。

contentPane.add(panel1); //将面版容器panel1加到内容面版上。

contentPane.add(panel2); //将面版容器panel2加到内容面版上。

f.pack(); //使窗口可见。

f.show(); //使窗口中的组件可见。

f.addWindowListener(new WindowAdapter() { //41-43行处理关闭窗口动作

public void windowClosing(WindowEvent e) { System.exit(0); }

}); }

public static void main(String[] arg){ new Eg7_3(); } }

5. 设计一个计算器的面板,只要求布置九个数字按钮。

import java.awt.*;

import java.awt.event.* ; import javax.swing.*; public class Eg7_11 { public Eg7_11() {

JFrame f = new JFrame(); //创建FRame对象f,并用构造方法进行实例化

Container contentPane = f.getContentPane();

contentPane.setLayout(new GridLayout(5,3)); /*网格布局:3行3列---有改动*/ for( int i=1;i<=9;i++)

contentPane.add(new JButton(\ contentPane.add(new JButton(\ contentPane.add(new JButton(\ contentPane.add(new JButton(\ contentPane.add(new JButton(\ contentPane.add(new JButton(\ contentPane.add(new JButton(\

f.setTitle(\网格布局管理器\设置窗口标题 f.pack(); f.setVisible(true);

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4