Java语言与程序设计3

更新时间:2024-04-03 00:48:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

1、Java语言最初是面向哪个应用领域设计的?( ) A、Internet B、制造业 C、消费电子产品 D、CAD 2、下列关于注释语句的描述中,正确的一项是( ) A、以//开始的是多行注释语句

B、以/*开始,*/结束的是单行注释语句

C、以/**开始,*/结束的是可以用于生成帮助文档的注释语句 D、以/**开始,*/结束的是单行注释语句 3、下列标识符中,正确的是:( ) A、class B、123_rr C、_lei D、test&12 4、下列关于类、包和源文件的描述中,不正确的一项是( )。 A、一个包可以包含多个类

B、一个源文件中,只能有一个公共类

C、属于同一个包的类在默认情况下可以相互访问 D、系统不会为源文件创建默认的包

5、关于被保护访问控制符 protected 修饰的成员变量,以下说法正确的是( )

A 、可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类 B 、可以被两种类访问和引用:该类本身、该类的所有子类 C 、只能被该类自身所访问和修改 D 、只能被同一个包中的类访问

6、下列哪个是Java应用程序主类中正确的main方法( )。 A、public void main(String args[]) B、public static void main(String args[]) C、public static void main(String args) D、static void main(String args[]) 7、正则表达式 ([0-9]{3})-([a-z]{3})-([a-z]*?ab) 与下列哪个字符串相匹配( )。 A、123-abc{3}-cab B、123{3}-abc-cab C、123-abc-cb D、123-abc-ccab 8、下列那个类的声明是错误的( )。 A、final abstract class A B、final class A C、abstract class A D、public class A 9、方法public void abc(int a){},以下哪一个是它的重载方法( ) A、private void a(){} B、private int abc(int a){} C、public int abc(int a,String name){} D、private void abc(int a){} 10、以下哪一个不是受检查的异常类( ) A、SQLException B、NullPointerException C、FileNotfoundException D、IOException 11、当子类中的内部类与父类中的内部类同名时( ) A、子类复盖了父类的内部类 B、编译出错 C、运行出错 D、各自拥有自己的内部类,互不影响 12、下列叙述那个是正确的( )。

A、Frame类对象的默认的布局是FlowLayout布局 B、Panel类对象的默认的布局是FlowLayout布局 C、Button类的直接父类是Container

D、TextField对象可以触发ItemEvent事件 13、下列叙述那个是正确的( )。

A、任何组件都可以触发MouseEvent事件

B、处理WindowEvent事件的接口是FocusListener

共 10 页 第 1 页

C、java.awt.event.MouseAdapter类实现了ActionListener接口 D、java.awt.event.WindowAdapter是一个接口 14、启动一个线程应使用线程类的( ) A、run() B、start() C、go() D、thread() 15、对于以下代码,哪个能编译通过( ) public interface Animal{}

public class Dog implements Animal{} public class Cat implements Animal{} A、Dog dog = new Cat(); B、Cat cat = new Animal(); C、Animal cat = new Dog(); D、Cat c = new Cat(); Dog d = (Dog)c; 16、以下程序段,运行时会出现什么结果( ) public class Person{

static int arr[] = new int[5];

public static void main(String a[])

{ System.out.println(arr[0]); } }

A、编译时将产生错误 B、编译时正确,运行时将产生错误 C、输出零 D、输出空 17、对于下面这段程序,说法正确的是( ) class test1

{ public static void main(String args[]) { int y,x=1,total=0; while(x<=3) { y=x*x; System.out.println(y); total+=y; ++x; } System.out.println(\ } }

A、编译时将产生错误 B、程序将会陷入死循环 C、total的值是为3! D、total的值最终为14 18、对于下面的不完整的类代码:( ) class person

{ String name,department; public person(String n) { name=n; }

public person(String n,String d) { _______________ department=d; }

共 10 页 第 2 页

}

下面表达式中,哪个可以加到构造方法中的“___________”处 A、person(n) B、this(person(n)) C、this(n) D、this(n,a); 19、阅读下面代码:( ) class person

{ public int addvalue(int a,int b) { int s; s=a+b; return s; } }

class child extends parent{}

若要在child类中对addvalue方法进行重写,下面对于child类中的addvalue方法头的描述哪个是正确的:

A、int addvalue(int I,int j) B、void addvalue() C、void addvalue(double i) D、int addvalue(int a) 20、下面程序中,有错误的一行是:( ) Final class MyClass ① { int var=100 ; ②

static int getVar() ③

{ return var; ④ } }

A、① B、② C、③ D、④

1、Java有什么特点?

2、Java的基本数据类型都是什么?

3、什么是类体,类体的内容由哪两部分构成? 4、什么叫接口的回调?

5、引起线程中断的常见原因是什么?

1、分析下列程序得出输出结果。 public class E2_1

{ public static void main( String args[] ) { long[] a={5,4,3,2,1}; long[] b={100,200,300,400}; b=a; System.out.println(\数组b的长度:\ System.out.println(\ } }

2、分析下列程序得出输出结果。 class A4_2

{ int x=300,y=200;

共 10 页 第 3 页

public void setX( int x ) { x=x; }

public void setY( int y ) { this.y=y;

}

public int getXYSum() { return x+y; }

}

public class E4_2

{ public static void main( String args[] ) { A4_2 a=new A4_2(); a.setX(-300); a.setY(-200); System.out.println(\ } }

3、分析下列程序得出输出结果。 class A4_5

{ double f(double x,double y ) { return x+y; }

static int g(int n ) { return n*n; } }

class B4_5 extends A4_5

{ double f(double x,double y ) { double m=super.f(x,y);

return m+x*y;

}

static int g(int n ) { int m=A 4_5.g(n) ;

return m+n;

} }

public class E4_5

{ public static void main( String args[] ) { B4_5 b=new B4_5(); System.out.println(b.f(5.0,15.0)) ; System.out.println(b.g(4)) ; } }

共 10 页 第4 页

4、分析下列程序得出输出结果。 import java.util.*; public class E5_2

{ public static void main( String args[] ) { int a[]={3,60,91,90,-987}; double b[]={12.09,87.87,36,678. 876,-90.90,7.12}; Arrays.sort(a);

Arrays.sort(b,1,4); for(int i=0;i<=4;i++)

{ System.out.print (a[i]+ \}

System.out.println(\

for(int i=0;i<=b.length-1;i++) { System.out.print (b[i]+ \}

} }

5、阅读程序段,回答问题。 public class ClassA{

public void method1(int i){} public void method2(int i){}

public static void method3(int i){} public static void method4(int i){} }

public class ClassB extends ClassA{

public static void method1(int i){} public void method2(int i){} public void method3(int i){}

public static void method4(int i){} }

ClassB中(method1、method2、method3、method4)四个方法,方法 ___覆盖了父类方法;方法___ 隐藏了父类方法。

6、分析下列程序得出输出结果。

class Fibi

{ public static long fibinacii(int n)

{ long c=0; if(n==1||n==2) c=1; else

c=fibinacii(n-1)+fibinacii(n-2); return c; } }

public class E6_2

{ public static void main(String args[]) { System.out.println(Fibi.fibinacii(6));

共 10 页 第 5 页

} }

1、根据提示(【代码X】)完成程序填空,代码模板如下: 模板代码:E4_20.java

【代码1】 动物{ //声明一个抽象类

abstract void cry(); }

class 狗 extends 动物 { void cry()

{ System.out.println(\汪汪.....\ } }

class 猫 extends 动物

{ 【代码2】//重写猫的cry方法 }

class E4_20

{ public static void main(String args[]) { 动物 dongwu; 【代码3】://用dongwu对象来使用狗的cry方法; 【代码4】://用dongwu对象来使用猫的cry方法; } }

2、根据提示(【代码X】)完成程序填空,接口回调的代码模板如下 模板代码:Road.java

interface ComputerWeight

{ public double computeWeight(); }

class Television implements ComputerWeight

{ 【代码1】 //实现computeWeight()方法,返回45.5。 }

class Computer implements ComputerWeight

{ 【代码2】 //实现computeWeight()方法,返回65.5。 }

class WashMachine implements ComputerWeight

{ 【代码3】 //实现computeWeight()方法,返回145。 }

class Car

{ ComputerWeight[] goods; double totalWeights=0;

Car(ComputerWeight[] goods) { this.goods=goods; }

public double getTotalWeights() { totalWeights=0;

【代码4】 //计算totalWeights return totalWeights;

共 10 页 第 6 页

} }

public class Road

{ public static void main(String args[])

{ ComputerWeight[] goodsOne=new ComputerWeight[50], goodsTwo=new ComputerWeight[22] ; for(int i=0;i

goodsOne[i]=new Television(); else if(i%3==1)

goodsOne[i]=new Computer(); else if(i%3==2)

goodsOne[i]=new WashMachine(); }

for(int i=0;i

goodsTwo[i]=new Television(); else if(i%3==1)

goodsTwo[i]=new Computer(); else if(i%3==2)

goodsTwo[i]=new WashMachine(); }

Car 大货车=new Car(goodsOne);

System.out.println(\大货车装载的货物重量:\大货车.getTotalWeights()); Car 小货车=new Car(goodsTwo);

System.out.println(\小货车装载的货物重量:\小货车.getTotalWeights()); }

}

3、根据提示(【代码X】)完成程序填空,信号灯的代码模板如下: 模板代码:SignalCanvas.java

import java.awt.*;

public class SignalCanvas extends Canvas { int red,green,yellow,x,y,r; SignalCanvas()

{ setBackground(Color.white); }

public void setRed(int r) { red=r; }

public void setGreen(int g) { green=g; }

public void setYellow(int y) { yellow=y; }

public void setPosition(int x,int y) { this.x=x;

共 10 页 第 7 页

this.y=y; }

public void setRadius(int r) { this.r=r; }

public void paint(Graphics g) { if(red==1)

{ g.setColor(Color.red); }

else if(green==1)

{ g.setColor(Color.green); }

else if(yellow==1)

{ g.setColor(Color.yellow); }

g.fillOval(x,y,2*r,2*r); } }

SignalFrame.java

import java.awt.*; import java.applet.*; import java.awt.event.*;

public class SignalFrame extends Frame implements ItemListener { Choice choice;

SignalCanvas signal=null;

String itemRed=\红灯\黄灯\绿灯\ public SignalFrame()

{ choice=【代码1】 //创建choice

【代码2】 //创建choice添加itemRed 【代码3】 //创建choice添加itemYellow 【代码4】 //创建choice添加itemGreen 【代码5】 //将当前窗口注册为choice的ItemEvent事件监视器 add(choice,BorderLayout.NORTH);

try{ Class cs=Class.forName(\ signal=(SignalCanvas)cs.newInstance(); add(signal,BorderLayout.CENTER); }

catch(Exception e)

{ add(new Label(\您还没有编写SignalCanvas类\ }

setBounds(100,100,360,300); setVisible(true); validate();

addWindowListener(new WindowAdapter()

共 10 页 第 8 页

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

public void itemStateChanged(ItemEvent e)

{ String item= 【代码6】 // choice返回被选中的条目 int w=signal.getBounds().width; int h=signal.getBounds().height; int m=Math.min(w,h); signal.setRadius(m/6);

if(【代码7】) //判断item的值是否为itemRed { if(signal!=null) { signal.setRed(1); signal.setYellow(0); signal.setGreen(0);

signal.setPosition(w/3,0); signal.repaint(); } }

else if(item.equals(itemYellow)) { if(signal!=null) { signal.setRed(0); signal.setYellow(1); signal.setGreen(0);

signal.setPosition(w/3,h/3); signal.repaint(); } }

else if(item.equals(itemGreen)) { if(signal!=null) { signal.setRed(0); signal.setYellow(0); signal.setGreen(1);

signal.setPosition(w/3,2*h/3); signal.repaint(); } } } }

SignalMainClass.java

public class SignalMainClass

{ public static void main(String args[]) { SignalFrame frame;

共 10 页 第 9 页

frame=new SignalFrame() ; frame.setTitle(\信号灯\ } } 共 10 页第 10 页

本文来源:https://www.bwwdw.com/article/cyfr.html

Top