实验7
1. 编一个程序,包含以下文件。
(1)文件,在该文件中定义接口Shape,该接口在shape包中。
属性:PI。
方法:求面积的方法area()。
(2)文件,在该文件中定义圆类Circle,该类在circle包中,实现Shape接口。
属性:圆半径radius。
方法:构造方法;实现接口中求面积方法area();求周长方法perimeter()。
(3)“”文件,在该文件中定义圆柱体类Cylinder,该类口在cylinder包中,继承圆类。
属性:圆柱体高度height。
方法:构造方法;求表面积方法area();求体积方法volume()。
(4)文件,在该文件中定义主类X5_3_6,该类在默认包中,其中包含主方法main(),在主方法中创建两个圆类对象cir1和cir2,具体尺寸自己确定,并显示圆的面积和周长;再创建两个圆柱体类的对象cy1和cy2,具体尺寸自己确定,然后分别显示圆柱体cy1和cy2的底圆的面积和周长以及它们各自的体积和表面积。
【编程分析】本题主要考察接口、包、继承、封装等问题。编程步骤如下:
第一步:首先创建p1包,在其中创建Shape接口
;
public class Circle implements Shape{    ;
public class X5_3_6 {    ;
public class X5_3_6 {    ;
public class Circle implements Shape{    ;
public class X7_3_2 {   
    public static void main(String[] args)throws IOException{
        InputStreamReader isr = new InputStreamReader;
        BufferedReader br = new BufferedReader(isr);
            int[] a = new int[5];
            int n = ());
            if(n>5)     ;
public class X7_3_3 {   
    public static void main(String args[]) throws IOException{
        InputStreamReader isr = new InputStreamReader;
        BufferedReader br = new BufferedReader(isr);
        "请输入两个整数:");
        int a = ( ());
        int b = ( ());
        try{    ;
public class X7_3_4 {   
    public static void main(String args[]) throws IOException{
        InputStreamReader isr = new InputStreamReader;
        BufferedReader br = new BufferedReader(isr);
        "请输入两个整数:");
        int a = ( ());
        int b = ( ());
java接口有没有构造方法
        try{
            if(b==0)
                throw new ArithmeticException("抛出算术异常");
                    }
        catch(ArithmeticException e){           
            ();
            "出现被0除的情况!");
        }
        int c[] ={1, 2, 3, 4}, sum = 0;
        try{
            for(int i = 0; i<5; i++)  {
                if(i >= 4)
                    throw new ArrayIndexOutOfBoundsException("抛出数组下标越界异常");
                sum += c[i];
                " sum = " + sum);
            }           
        }
        catch(ArrayIndexOutOfBoundsException e){
            ();
            "数组下标越界!");
        }
    }
}
5.自定义两个异常类NumberTooBigException和NumberTooSmallException,在其中定义各自的构造方法,分别打印输出“发生数字太大异常”和“发生数字太小异常”。然后在主类中定义一个带throws的方法numberException(int x),当x>100时通过throw抛出NumberTooBigException异常,当x<0时通过throw抛出NumberTooSmallException异常;最后在main()方法中调用该方法,实现从键盘中输入一个整数,如果输入的是负数,引发NumberTooSmallException异常,如果输入的数大于100,引发。NumberTooBigException异常,否则输出“没有发生异常”。
【编程分析】本题主要考察自定义异常的方法。
第一步:定义异常类NumberTooBigException
class NumberTooBigException extends Exception{
    NumberTooBigException(){
        super("发生数字太大异常 ");
    }
}
第二步:定义异常类NumberTooSmallException
class NumberTooSmallException extends Exception{
    NumberTooSmallException(){
        super("发生数字太小异常");
    }
}
第三步:在主类X7_3_5中定义numberException()方法。
public static void numberException(int x)
throws NumberTooBigException, NumberTooSmallException{
        if(x>100)
            throw new NumberTooBigException();
        else if (x<0)
            throw new NumberTooSmallException();
        else
            "没有异常发生")    ;
}
第四步:在main()方法中调用numberException()方法并捕捉和处理由此方法引起的异常。
【参考程序】
import .*;
public class X7_3_5 {   
    public static void main(String args[]) throws IOException{
        InputStreamReader isr = new InputStreamReader;
        BufferedReader br = new BufferedReader(isr);
        "请输入一个整数:");
        int a = ( ());
        try{
            numberException(a);
        }catch(NumberTooBigException e){           
            ();
        }catch(NumberTooSmallException e){           
            ();
        }
    }
    public static void numberException(int x) throws NumberTooBigException, NumberTooSmallException{
            if(x>100)
                throw new NumberTooBigException();
            else if (x<0)
                throw new NumberTooSmallException();
            else
                "没有异常发生")    ;
    }
}
class NumberTooBigException extends Exception{
    NumberTooBigException(){
        super("发生数字太大异常 ");
    }
}
class NumberTooSmallException extends Exception{
    NumberTooSmallException(){
        super("发生数字太小异常");
    }
}
实验9
一、选择题
1.下列说法中错误的一项是(  B  )。
A.构件是一个可视化的能与用户在屏幕上交互的对象
B.构件能够独立显示出来
C.构件必须放在某个容器中才能正确显示
D.一个按钮可以是一个构件
【解析】构件不能独立显示,它必须放在某个容器中才能正确显示。
2.进行Java基本GUI设计需要用到的包是(  C  )。
A.            B.            C.        D.
【解析】进行Java基本GUI设计需要用到的包是和
3.Container是下列哪一个类的子类(  D  )?
A.Graphics        B.Window            C.Applet        D.Component
【解析】Container类是由Component类派生的。
4.的父类是(  B  )。
A.                    B. Window       
C. Panel                        D.【解析】的父类 Window。
5.下列哪个方法可以将MenuBar加入Frame中( D  )?
A.setMenu()        B.addMenuBar()        C.add()            D.setMenuBar()
【解析】可以将MenuBar加入Frame中的方法是setMenuBar()。
6.下列叙述中,错误的一项是(  D  )。
A.采用GridLayout布局,容器中的每个构件平均分配容器空间
B.采用GridLayout布局,容器中的每个构件形成一个网络状的布局
C.采用GridLayout布局,容器中的构件按照从左到右、从上到下的顺序排列
D.采用GridLayout布局,容器大小改变时,每个构件不再平均分配容器空间
【解析】采用GridLayout布局,容器大小改变时,每个构件平均分配容器空间。
7.当单击鼠标或拖动鼠标时,触发的事件是(  D  )。
A.KeyEvent        B.ActionEvent        C.ItemEvent        D.MouseEvent
【解析】对鼠标操作,触发的事件是MouseEvent事件。
8.下列哪一项不属于Swing的顶层组件(  C  )?
A.JApplet        B.JDialog            C.JTree            D.Jframe
【解析】JTree    只有在容器中才能显示,它不属于swing的顶层组件。
9.下列说法中错误的一项是(  D  )。
A.在实际编程中,一般使用的是Component类的子类
B.在实际编程中,一般使用的是Container类的子类
C.Container类是Component类的子类
D.容器中可以放置构件,但是不能够放置容器
【解析】容器中既可以放置构件,也可以放置容器。
10.下列哪一项不属于AWT布局管理器(  D  )?
A.GridLayout    B.CardLayout        C.BorderLayout        D.BoxLayout
【解析】BoxLayout属于swing布局管理器,不属于AWT布局管理器。
11.下列说法中错误的一项是(  A  )。
A.MouseAdapter是鼠标运动适配器      B.WindowAdapter是窗口适配器

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。