微信

使用微信服务,更方便

职友集>Java面试题 > java程序员测试试卷

java程序员测试试卷

2015-05-10 06:30:02 阅读( 192 )

2583人 收藏本页

标签:Java面试题

1.Java application中的主类需包含main方法,以下哪项是main方法的正确形参?(B)
A、 String args B、String args[] C、Char arg D、StringBuffer args[]
2.以下代码段执行后的输出结果为(A)
int x=-3; int y=-10;
System.out.println(y%x);
A、 -1 B、2 C、1 D、3
3.以下关于继承的叙述正确的是(A)。
A、在Java中类只允许单一继承
B、在Java中一个类只能实现一个接口
C、在Java中一个类不能同时继承一个类和实现一个接口
D、在Java中接口只允许单一继承
4. 若有定义:byte[] x={11,22,33,-66};
其中0≤k≤3,则对x数组元素错误的引用是(C)
A)x[5-3]
B)x[k]
C)x[k+5]
D)x[0]
5.paint()方法使用哪种类型的参数? (A)
A、Graphics B、Graphics2D C、String D、Color
6.以下哪个不是Java的原始数据类型(B)
A、int B、Boolean C、float D、char
7.在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数的个数、类型或顺序各不相同,传回的值也可以不相同。这种面向对象程序特性称为(C)
A)隐藏
B)重写
C)重载
D) Java不支持此特性
8.以下有关构造方法的说法,正确的是:(A)
A.一个类的构造方法可以有多个
B.构造方法在类定义时被调用
C.构造方法只能由对象中的其它方法调用。
D.构造方法可以和类同名,也可以和类名不同
9.在浏览器中执行applet 程序,以下选项中的哪个方法将被最先执行(A)。
A、init() B、start() C、destroy() D、stop()
10.给出下面代码,关于该程序以下哪个说法是正确的?(C)
public class Person{
static int arr[] = new int[5];
public static void main(String a[])
{
System.out.println(arr[0]); }
}
A、编译时将产生错误 B、编译时正确,运行时将产生错误
C、输出零 D、输出空
11、有以下方法的定义,请选择该方法的返回类型(D)。
ReturnType method(byte x, double y)
{
return (short)x/y*2;
}
A、byte B、short C、int D、double
12.下列类定义中哪些是合法的抽象类的定义?(C)
A、abstract Animal{abstract void growl();}
B、class abstract Animal{abstract void growl();}
C、abstract class Animal{abstract void growl();}
D、abstract class Animal{abstrac t void growl(){System.out.println(“growl”);};}
13.有以下程序片段,下列哪个选项不能插入到行1。(D)
1.
2.public class Interesting{
3.//do sth
4. }
A、import java.awt.*; B、package mypackage;
C、class OtherClass{ } D、public class MyClass{ }
14. 设有下面两个赋值语句:
a = Integer.parseInt(“12”);
b = Integer.valueOf(“12”).intValue();
下述说法正确的是(D)。
A、a是整数类型变量,b是整数类对象。B、a是整数类对象,b是整数类型变量。
C、a和b都是整数类对象并且值相等。 D、a和b都是整数类型变量并且值相等。
15.在编写Java Applet程序时,需在程序的开头写上( B)语句。
A、import java.awt.* ; B、import java.applet.Applet ;
C、import java.io.* ; D、import java.awt.Graphics ;
16.下列哪一项不属于Swing的顶层容器?(B)
A)JApplet
B)JTree
C)JDialog
D)JFrame
17. 为了使包ch4在当前程序中可见,可以使用的语句是(A)。
A)import ch4.*;
B)package ch4.*;
C)ch4 import;
D)ch4 package;
18. 请问所有的异常类皆继承哪一个类?(B)。
A)java.io.Exception
B)java.lang.Throwable
C)java.lang.Exception
D)java.lang.Error
19.进行Java基本的GUI设计需要用到的包是(C)。
A)java.io
B)java.sql
C)java.awt
D)java.rmi
20. 当点击鼠标或者拖动鼠标时,触发的事件是下列的哪一个?(D)
A)KeyEvent
B)ActionEvent
C)ItemEvent
D)MouseEvent
第二题:填空题(10×2分)
1、在Java中,正确的标识符是以字母、下划线和__$字符____为开始的字符串。
2.数组x定义:String x[ ][ ]=new int[3][2]; x[0 ][0 ]=”abc”, x[0 ][1]=”12345”;
则 x.length 的值为____6___,x[0][1].length( ) 的值为__5____。
3.在Java程序中,通过类的定义只能实现单重继承,但通过__接口___ 的定义可以实现多重继承关系。
4.在面向对象的程序设计中,类是具有相似性质的一组 __对象___的集合。
5. 若x = 5,y = 10,则 x > y && x++ == y –的逻辑值为 ____false____。
6、当程序中需要抛出异常时,应该使用___throw____子句,当需要在方法中声明可能抛出的异常类型,应该使用__throws___子句。
7、Java图形开发包支持了Java语言的__跨平台____特性。
8、Java语言中提供的GUI功能主要由java.awt包和__java.swing__包中的类和接口实现。
第三题:判断题(5×2分)
1、Java语言采用的Unicode字符集比ASCII字符集丰富得多。(T )
2、javax.swing包是jdk1.1以后用来取代java.awt包中类功能的,因此前者可取代后者进行GUI设计;而不再需要引入java.awt包。(F)
3、interface中只能包括常量和抽象方法。(F)
4、在定义数组时不能够直接进行内存分配,如:char ch[10];是错误的定义语句(T)
5、抽象方法只能够出现在抽象类中,而抽象类不能进行实例化。(T )
第四题:程序阅读题(4×4)
1.运行下列程序的结果是:00000

abstract class Base {
abstract void amethod();
static int i;
}
public abstract class ex3 extends Base{
public static void main(String argv[]){
int[] ar = new int[5];
for(i=0;i<=ar.length;i++)
System.out.println(ar);
}
}
2.以下程序段的输出结果为:56789
public class TestArray
{
public static void main(String args[ ]){
int i , j ;
int a[ ] = { 5,9,6,8,7};
for ( i = 0 ; i < a.length-1; i ++ ) {
int k = i;
for ( j = i ; j < a.length ; j++ )
if ( a[j]<a[k] ) k = j;
int temp =a;
a = a[k];
a[k] = temp;
}
for ( i =0 ; i<a.length; i++ )
System.out.print(a+” “);
System.out.println( );
}
}
3、分析程序,写出程序的运行结果:4,5
class MySuper {
public long getLength(){
return 4;
}
}
public class SubDemo extends MySuper {
public long getLength(){
return 5;
}
public static void main (String[] args){
MySuper sooper = new MySuper();
SubDemo sub = new SubDemo();
System.out.println(sooper.getLength()+ “,” + sub.getLength());
}
}
4.阅读程序段,回答问题:
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)四个方法,方法
__ method2___覆盖了父类方法;方法__ method4__ 隐藏了父类方法。
第五题:编程题(14分)
1.(6分) 编写一个输出”Hello World!”的程序,用两种方式实现(Application、Applet)。
①Application(2分)
public class Hello{
public static void main(string args[])
{System.out.println(“Hello World!”);}
}

②Applet(4分)
import java.awt.Graphics;
import.java.applet.Applet;
public class HelloApplet extends Applet{
public void paint(Graphics g)
{g.drawString(“Hello World!”,20.20);
}
}

2.编写一个Application,接受用户输入的帐号和密码,给三次输入机会.(8分)
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Lx9_6 extends JFrame implements ActionListener{
JLabel jl1,jl2,jl3;int n=0;
JPasswordField jp1,jp2;
JButton jb1,jb2;
JPanel p;
//JFrame f;
public Lx9_6(){
super(“Lx9_6演示”);
//Container c=getContentPane();
jl1=new JLabel(“请输入您的密码:”,JLabel.CENTER);
jl2=new JLabel(“请输入密码!”);
jl3=new JLabel(“您有三次输入机会”,JLabel.LEFT);
jp1=new JPasswordField(8);
p=new JPanel();
jb1=new JButton(“提交”);
jb1.setActionCommand(“tijiao”);
jb2=new JButton(“取消”);
jb2.setActionCommand(“quxiao”);
p.setBorder(BorderFactory.createTitledBorder(“密码设置”));
p.setLayout(new GridLayout(2,2));
p.add(jl1);
p.add(jp1);
p.add(jb1);
p.add(jb2);
jb1.addActionListener(this);
jb2.addActionListener(this);
//f.add(p);
getContentPane().add(p,BorderLayout.NORTH);
getContentPane().add(jl2,BorderLayout.CENTER);
getContentPane().add(jl3,BorderLayout.WEST);
}
public void actionPerformed(ActionEvent e){
if(e.getActionCommand().equals(“tijiao”)){n++;System.out.print(n);
}
if(e.getSource()==jb1)
if(jp1.getPassword().length>0)
if(String.valueOf(jp1.getPassword()).equals(“123456″))
{ jl2.setText(“密码输入成功!”);n–;}
else
{ jl2.setText(“密码输入不对,请重新输入!”);
jp1.setText(“”);
}
else
jl2.setText(“密码不能为空!”);
jp1.setText(“”);
;
if(e.getSource()==jb2){
jp1.setText(“”);
jl2.setText(“请输入!”);
}
jl3.setText(“第”+n+”次输入!”);
if(n>3)System.exit(0);
}
public static void main(String a[]){
Lx9_6 f=new Lx9_6();
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setSize(400,200);
f.setVisible(true);
}
}

(二)
第一题:单项选择题(20×2分)
1.下列哪个选项是合法的标识符?(B)
A、 123 B、 _name C、 class D、1first
2. 下列的哪个选项可以正确用以表示八进制值8?(D)
A)0×8
B)0×10
C)08
D)010
3.已知有下列Test类的说明,则下列哪个语句是正确的?(A)
public class Test
{
private float f = 1.0f;
int m = 12;
static int n=1;
public static void main(String args[])
{
Test t = new Test();
}
}
A)t.f;
B)this.n;
C)Test.m;
D)Test.f;
4.欲定义类字段或类方法(静态方法),应该使用下列哪一个修饰符修饰(B)
A、public B、 static C、 protected D、 synchronized
5.与InputStream流相对应的Java系统的“标准输入对象”是(A)。
A)System.in
B)System.out
C)System.err
D)System.exit()
9.下列属于容器的组件有(B)
A. JButton B. JPanel C. Thread D. JTextArea
10.进行Java基本的GUI设计需要用到的包是(C)。
A)java.io
B)java.sql
C)java.awt
D)java.rmi
11.下列类定义中哪些是合法的抽象类的定义?(C)
A、abstract Animal{abstract void growl();}
B、class abstract Animal{abstract void growl();}
C、abstract class Animal{abstract void growl();}
D、abstract class Animal{abstrac t void growl(){System.out.println(“growl”);};}
12.顺序执行下列程序语句后,则b的值是(C)
String a=”Hello”;
String b=a.substring(0,2);
A)Hello
B)hello
C)Hel
D)null
13.下列整型的最终属性 i 的定义中,正确的是(A)。
A) static final int i=100; B) final i;
C) static int i; D) final float i=1.2f;
14.Java Applet在被浏览器加载的时候首先被执行且在applet整个生命周期中只被运行一次的方法是(A)?
A) init() B) stop() C) opreationcrawl() D) reader()
20.下列语句序列执行后,输出结果是(B)。
public class ex {
public static void main(String[] args) {
int a=13;
a=a/5;
System.out.println(a);
}
}
A) 1
B) 2
C) 3
D) 4
第二题:填空题(10×2分)
3.Java 语言支持程序并行执行的多线程编程,实现了一般传统语言难以实现的某些功能;Java的线程是通过java.lang.类来实现的,在该类中封装了虚拟的_ Thread CPU _。
4. 字符串分为两大类,一类是字符串常量,使用String 类的对象表示;另一类是字符串变量,使用__StringBuffer_ _类的对象表示
6.Java 程序可以分为 Application 和 Applet 两大类,能在 WWW 浏览器上运行的是 _ Applet __ 。
7. Java 源程序文件编译后产生的文件称为__字节码 __文件,其扩展名为 __.class___。
第三题:程序填空题(5×3分)
1.下面是用户程序对 Applet 类中方法 action( ) 的重新定义,功能为从单行文本编辑区 input 中输入数据赋给k。TextField 类的对象input和int型变量k已在类体中正确说明。
public _boolean input__ action( Event e, Object o ){
if( e.target==input )
k=Integer.parseInt( _ _.getText( ) );
repaint( );
return true;
}
2.在D:\Test目录下有一个文本文件javatest.txt,文件内容是:
Hello,I am a boy!
I like java programming!
I want to pass the NCR examination!
下列程序使用文件输入流将该文件的内容打印到计算机屏幕上,请根据程序功能完成空白处代码。
package Test;
_ import java.io.* __ ;
public class Test46{
static String file=__ ______;
public static void main(String[] args){
try{
FileInputStream fis=new FileInputStream(file);
int eof=0;
while((eof= fis.read())!= -1)
System.out.print( (char)eof);
__ _ _;
}catch(IOException ioe){
System.out.println(“ 文件错误!”);
System.exit(1);
}
}
}
第四题:程序阅读题(6+5+4分)
1.运行下列程序的结果是
class TC7{
static void mathodA( )
{try{
System.out.println(“\n methodA抛出一个异常”);
throw new RuntimeException( );
}
finally{System.out.println(“\n 执行methodA 的finally”); }
}
public static void main(string args[])
{try{
mathodA( );
}
catch(Exception e) { System.out.println(“\n 产生异常”); }
}
}
运行结果::methodA抛出一个异常,执行methodA 的finally
产生异常
2.阅读程序,回答问题:
public class ex2 {
public static void main(String[] args)
{
for(int x=0;x<10;x++)
{
if(x= =5)
break;
System.out.print(“ “+x);
}
}
}
该程序打印结果是:0 1 2 3 4
第五题:编程题(2×5分)
1. 编写Application程序,输出2~100之间的所有素数。
public class tt{
public static void main(String args[]){
int n,i;
for(n=2;n<=100;n++)
{
for (i=2;i<=n-1;i++)
if(n%i==0)break;
if(i==n)System.out.print(n+” “);
}
}
}

2.编写Application程序,使程序运行后在屏幕上生成如下图案:
import java.awt.*;
import java.applet.*;
public class Ww extends Applet {
public void init(){
Button button=new Button(“确定”);
Label l=new Label(“你好”);
add(l); add(button);
}
}

(三)
第一题:单项选择题(20×2分)
5.Java Applet在被浏览器加载的时候首先被执行且在applet整个生命周期中只被运行一次的方法是()?
A、init() B、start() C、opreationcrawl() D、reader()
9.类Parent、Child定义如下:
1. public class Parent
2.{ public float aFun(float a, float b) throws
3. IOException { }
4.}
5.public class Child extends Parent{
6.
7.}
将以下哪种方法插入行6是不合法的。(A)
A、float aFun(float a, float b){ }
B、public int aFun(int a, int b)throws Exception{ }
C、public float aFun(float p, float q){ }
D、public int aFun(int a, int b)throws IOException{ }
14.在使用interface声明一个接口时,只可以使用(D)修饰符修饰该接口。
A、private B、protected C、private protected D、public
15.以下哪项可能包含菜单条(B)。
A、Panel B、Frame C、Applet D、Dialog
17、给定下列表达式
Integer I= new Integer(42);
Long L= new Long(42);
Double D= new Double(42.0);
则下列表达式输出为true的是__D___
(A) (I==L) (B) (I==D) (C) (D==L) (D) (I.equals (D))
第二题:填空题(10×2分)
1、若byte b=123; short s= 456 ;则表达式b+s的类型是__int_。
3、Java语言的变量由变量名、_变量类型__、变量属性、__变量初值__组成。
4、在Java中,常数Double.MAX_VALUE的包装类是___ java.lang.Double __。
6、java.applet包中的___ Applet _____类定义了Applet与其运行环境之间的一个标准接口。第三题:判断题(5×2分)
Java是SUN公司的产品,它是一种强数据类型语言。(T)
2.构造函数用于创建类的实例对象,构造函数名应与类名相同,返回类型为void。(F)
3.在异常处理中,若try中的代码可能产生多种异常则可以对应多个catch语句,若catch中的参数类型有父类子类关系,此时应该将父类放在后面,子类放在前面。(T)
5.拥有abstract方法的类是抽象类,但抽象类中可以没有abstract方法。(T )
第四题:程序阅读题(4×4)
2.写出以下程序的运行结果:4
import java.io.*;
public class ATest{
public static void main(String args[]) {
SubClass sb = new SubClass( );
System.out.println(sb.fun( ));
}
}
class SuperClass{
int a =24 , b =5 ;
}
class SubClass extends SuperClass{
int fun( ) { return a%b; }
3.写出以下程序的运行结果:no Exception
finally
Catch
finally

public class TryCatchFinally{
static void Proc( int sel ){
try{
if( sel==0 ){System.out.println(“no Exception “);
return;}
else if( sel==1 ){ int i=0; int j=4/i;}
}
catch( ArithmeticException e ) {
System.out.println(“Catch “); }
catch( Exception e ) {
System.out.println(“Will not be executed”);}
finally{
System.out.println(“finally”); }
}
public static void main( String args[] ){
Proc( 0 ); Proc( 1 ); }
}第五题:编程题
2.编写Application程序,使程序运行后在屏幕上生成如下图案:
程序运行

窗口中包含有一个文本框,一个标签,两个按钮,当按下“文本一”按纽时,使得Hello java!显示在文本框中,按下“文本二”按纽时,使得“你好 Java!”显示在文本框中(要求两个按纽之间使用网格布局,与其他组件共使用JFrame,默认布局管理)。程序头部已给出,请写出剩余代码部分。
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Lx9_4 implements ActionListener {
JFrame f;
JPanel p;
JTextField text1;
JLabel j;
JButton b1,b2;//下面代码由你续写:
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Lx9_4 implements ActionListener {
JFrame f;
JPanel p;
JTextField text1;
JLabel j;
JButton b1,b2;
public Lx9_4(){
f=new JFrame(“Lx9_4按钮转换文字”);
p=new JPanel();
j=new JLabel(“Lx9_4习题演示”);
p.setLayout(new GridLayout(1,2));
text1=new JTextField(30);
b1=new JButton(“文本一”);
b2=new JButton(“文本二”);
b1.setActionCommand(“t1″);
b2.setActionCommand(“t2″);
b1.addActionListener(this);
b2.addActionListener(this);
p.add(b1);
p.add(b2);
f.getContentPane().add(text1,BorderLayout.NORTH);
f.getContentPane().add(p,BorderLayout.CENTER);
f.getContentPane().add(j,BorderLayout.SOUTH);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.pack();
f.setVisible(true);
}
public void actionPerformed(ActionEvent Eve){
if(Eve.getActionCommand().equals(“t1″)){
text1.setText(“Hello Java!”);
}
else if(Eve.getActionCommand().equals(“t2″)){
text1.setText(“你好 Java!”);
}
}
public static void main(String a[]){
Lx9_4 c1=new Lx9_4();
}
}

来自IT公司面试手册

下一篇:java上机笔试试卷

上一篇:Java语言程序设计笔试试卷

亲~ 如果您有更好的答案 可在评论区发表您独到的见解。

您想查看更多的信息: 面试题