文档库 最新最全的文档下载
当前位置:文档库 › java模拟试题(带答案)

java模拟试题(带答案)

java模拟试题(带答案)
java模拟试题(带答案)

判断题

1.Java语言中的数组元素下标总是从0开始,下标可以是整数或整型表达式。

(√)2.在Java中对象可以赋值,只要使用赋值号(等号)即可,相当于生成了一

个各属性与赋值对象相同的新对象。(×)

3.所谓抽象类就是包含有抽象方法的类。(×)

4.Java系统的标准输入对象是System.in,标准输出对象有两个,分别是标准

输出System.out和标准错误输出System.err。(√)5.如果p是父类Parent的对象,而c是子类Child的对象,则语句c = p是

正确的。(×)6.当一个方法在运行过程中产生一个异常,则这个方法会终止,但是整个程序

不一定终止运行。(√)

7.用“+”可以实现字符串的拼接,用- 可以从一个字符串中去除一个字符子串。

(×)

8.一个容器中可以混合使用多种布局策略。(×)

9.Java中,并非每个事件类都只对应一个事件。(√)

10.Java的源代码中定义几个类,编译结果就生成几个以.class为后缀的字节

码文件。(√)

11.Java Applet是由独立的解释器程序来运行的。(×)

12.Java的字符类型采用的是ASCII编码。(×)

13.Java的各种数据类型占用固定长度,与具体的软硬件平台环境无关。(√)

14.System类不能实例化,即不能创建System类的对象。(×)

15.用户自定义的图形界面元素也可以响应用户的动作,具有交互功能。(√)填空题

1 java 源程序编译命令是 javac

2 java 应用程序中有一个main()方法,它前面有三个修饰符是 public , static , void

3 java语言数据类型可分为两大类,一类称为基本数据类型 ,另一类称为引用数据类型

4 在转向语句中, continue 语句使得程序结束本次循环,回到循环的条件测试部分继续执行。

5设x为float型变量, y为 double型变量, a为 int型变量,已知 x=2.5f,a=7 ,y=4.22 则表达式x+a%3*(int)x%(int)y的值为 4.5

6设x为float型变量, y为 double型变量, a为 int型变量,b 为long 型变量,c为char 型,则表达式x+y*a/x+b/y+c 的值为 double 类型

7设有数组定义:int MyIntArray[ ] = { 10 , 20 , 30 , 40 , 50 , 60 , 70}; 则执行以下几个语句后的输出结果是 120 。

int s = 0 ;

for ( int i = 0 ; i < MyIntArray.length ; i + + )

if ( i % 2 = = 1 ) s += MyIntArray[i] ;

System.out.println( s )

选择题

1.在浏览器中执行applet 程序,以下选项中的哪个方法将被最后执行(C)。

A、init()

B、start()

C、destroy()

D、stop()

2. Java application中的主类需包含main方法,main方法的返回类型是什么?( D)

A、int

B、float

C、double

D、void

3.设有下面两个类的定义:

class Person { class Student extends Person { {

long id; // 身份证号 int score; // 入学总分

String name; // 姓名 int getScore(){

} return score; } }

则类Person和类Student的关系是( B )。

A、包含关系

B、继承关系

C、关联关系

D、上述类定义有语法错误4.在编写Java Applet程序时,需要在程序的开头写上( B )语句。

A、import java.awt.* ;

B、import java.applet.* ;

C、import java.io.* ;

D、import java.awt.event.* ; 5.容器Panel和Applet缺省使用的布局编辑策略是( A )

A、FlowLayout

B、BorderLayout

C、GridLayout

D、CardLayout 6.有以下程序片段,下列哪个选项不能插入到行1。(A )

1.

2.public class A{

3.//do sth

4. }

A、public class MainClass{ }

B、package mine;

C、class ANotherClass{ }

D、import java.util.*;

7.在使用interface声明一个接口时,只可以使用( D )修饰符修饰该接口。

A、private

B、protected

C、private protected

D、public 8.以下哪个不是Java的关键字?( A )

A、FALSE

B、const

C、this

D、void

9.有程序如下,关于程序的描述哪个是正确的?(C)

public class Person{

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

public static void main(String a[])

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

}

A、编译将产生错误

B、编译时正确,但运行时将产生错误

C、正确,输出0

D、正确,输出null

10.以下关于构造函数的描述错误的是(A )。

A、构造函数的返回类型只能是void型。

B、构造函数是类的一种特殊函数,它的方法名必须与类名相同。

C、构造函数的主要作用是完成对类的对象的初始化工作。

D、一般在创建新对象时,系统会自动调用构造函数。

11.假设A类有如下定义,设a是A类的一个实例,下列语句调用哪个是错误的?( C)

class A

{ int i;

static String s;

void method1() { }

static void method2() { }

}

A、System.out.println(a.i);

B、a.method1();

C、A.method1();

D、A.method2() 12.有程序片段如下,以下哪个表示式的结果为true?( B)

Float s=new Float(0.1f);

Float t=new Float(0.1f);

Double u=new Double(0.1);

A、s==t

B、s.equals(t)

C、u.equals(s)

D、t.equals(u) 13.paint()方法使用哪种类型的参数? (A)

A、Graphics

B、Graphics2D

C、String

D、Color

14.下面哪个方法与applet的显示无关?(A)

A、draw()

B、update()

C、repaint()

D、paint()

15.下面哪个函数是public void aMethod(){...}的重载函数?( D )

A、void aMethod(){...}

B、public int aMethod(){...}

C、public void aMethod ( ){...}

D、public int aMethod(int m){...}

16 下列不可作为java语言标识符的是( D )

A a1

B $1

C _1

D 11

17 有一段java 应用程序 ,它的主类名是a1,那么保存它的源文件名可以是(A)

Aa1.java B a1.class C a1 D都对

18 下面说法正确的是(C)

A java Applet 程序必须在浏览器中执行

B java 应用程序必须在浏览器里执行

C java Applet 程序不一定在浏览器中执行

D java 应用程序可以在浏览器中执行

19 在浏览器中执行applet 程序的四个方法的最先执行的是(A)

A init()

B start()

C destroy()

D stop()

20 整型数据类型中,需要内存空间最少的是(D)

A short

B long

C int

D byte

21 java 类可以作为(C)

A 类型定义机制

B 数据封装机制

C 类型定义机制和数据封装机制

D 上述都不对

22 在创建对象时,必须(C )

A 先声明对象,然后才能使用对象

B 先声明对象,为对象分配内存空间,然后才能使用对象

C 先声明对象,为对象分配内存空间,对对象初始化,然后才能使用对象

D 上述说法都对

23 在调用方法时,若要使方法改变实参的值,可以(D)

A 用基本数据类型作为参数

B 用对象作为参数

C (A)和(B)都对

D (A)和(B)都不对

24 JAVA 中( C )

A 一个子类可以有多个父类,一个父类也可以有多个子类

B 一个子类可以有多个父类,但一个父类只可以有一个子类

C 一个子类可以有一个父类,但一个父类可以有多个子类

D 上述说法都不对

25 paint()方法使用哪种类型的参数? (A)

A、Graphics

B、Graphics2D

C、String

D、Color

26在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数个数、类型或顺序各不相同,传回的值也可以不相同。这种特性称为( C )

A、隐藏

B、覆盖

C、重载

D、Java不支持此特性

27类Test1、Test2定义如下:

1.public class Test1

2.{ public float aMethod(float a,float b) throws

3. IOException { }

4.}

5.public class Test2 extends Test1{

6.

7.}

将以下哪种方法插入行4是不合法的。(A)

A、float aMethod(float a,float b){ }

B、public int aMethod(int a,int b)throws Exception{ }

C、public float aMethod(float p,float q){ }

D、public int aMethod(int a,int b)throws IOException{ } 28以下哪个接口的定义是正确的?(D )

A、interface B

{ void print() { } ;}

B、abstract interface B

{ void print() ;}

C、abstract interface B extends A1,A2 //A1、A2为已定

义的接口

{ abstract void print(){ };}

D、interface B

{ void print();}

29 下列哪些语句关于Java内存回收的说明是正确的? ( B )

A、程序员必须创建一个线程来释放内存

B、内存回收程序负责释放无用内存

C、内存回收程序允许程序员直接释放内存

D、内存回收程序可以在指定的时间释放内存对象

30 A派生出子类B,B派生出子类C,并且在Java源代码中有如下声明:

1. A a0=new A();

2. A a1 =new B();

3. A a2=new C();

问以下哪个说法是正确的?(D)

A、只有第1行能通过编译

B、第1、2行能通过编译,但第3行编译出错

C、第1、2、3行能通过编译,但第2、3行运行时出错

D、第1行、第2行和第3行的声明都是正确的

三、程序阅读

1.写出以下程序的运行结果。

import java.util.*;

public class Vec{

public static void main(String[] args) {

String[] s;

s=new String[2];

s[0]=new String("no1");

s[1]=new String("no2");

Vector v = new Vector();

for(int i = 0; i <2; i++)

v.addElement(s[i]);

v.insertElementAt(new String("no3"),2);

Enumeration e = v.elements();

while(e.hasMoreElements())

System.out.print(e.nextElement()+" ");

System.out.println();

v.removeElement("no2" );

for(int i = 0; i < v.size() ; i++)

System.out.print(v.elementAt(i) +" ");

System.out.println(); }

}

程序运行的结果:

no1 no2 no3

no1 no3

2.写出以下程序的运行结果。

class StaticStuff

{

static int x;

static { System.out.println("x=" + x); x+=5; }

public static void main(String args[ ]){

System.out.println("x=" + x);

}

static { System.out.println("x=" + x);x%=3; }

}

程序运行的结果:

x=0

x=5

x=2

3.写出以下程序的运行结果。

class First {

First() {

System.out.println ("in First"); }

}

public class Second extends First {

Second() {

System.out.println("in Second"); }

public static void main(String[] args) {

Second mine= new Second(); }

}

程序运行的结果:

in First

in Second

4.解释程序中语句的含义

纯文本文件f1.txt中的内容是 abcd

下面的程序将f1.txt文件中的内容写到f2.txt文件中和屏幕上import java.io.*;

public class filecopy

{

public static void main(String[] args)

{

try

{

StringBuffer str=new StringBuffer();

FileInputStream fin=new FileInputStream("f1.txt");

意义

FileOutputStream fout=new FileOutputStream("f2.txt");

意义

int c;

while((c=fin.read())!=-1)

{

fout.write(c); 意义

str.append((char)c); 意义

}

fin.close();

fout.close();

String str2=str.toString();

System.out.println(str2); 显示的结果是

}catch(Exception c)

{

System.out.println(c);

}

}

}

实例化输入流对象,指定输入流来源文件为f1.txt

实例化输出流对象,指定输出流目标文件为f2.txt

将C写入到输出流对象中

将整数C转化为字符,并添加到字符串str的尾部

abcd

编程题

1、编写一个Java Application 程序App.java,main程序输入10个整数给数

组,通过函数getMinAndMax(int a[])得到这10个整数的最大值和最小值并输出结果。

class App

{

static void getMinAndMax(int a[])

{

int min,max;

min = max = a[0];

for(int i=1;i

{

if(a[i]>max)

max=a[i];

if(a[i]

min=a[i];

}

System.out.println(“Array’Max Value:”+max);

System.out.println(“Array’Min Value:”+min);

}

public static void main(String[] args)

{

int arr[] = {4,6,72,9,14,3,8,23,56,32};

getMinAndMax(arr);

}

}

2、编写一个完整的Java Application 程序。包含接口ShapeArea, Rectangle 类,Triangle类及Test类,具体要求如下:

⑴接口ShapeArea:

double getArea():求一个形状的面积

double getPerimeter ():求一个形状的周长

⑵类Rectangle:实现ShapeArea接口,并有以下属性和方法:

①属性

width: double类型,表示矩形的长

height: double类型,表示矩形的高

②方法

Rectangle(double w, double h):构造函数

toString()方法:输出矩形的描述信息,如“width=1.0,height=2.0, perimeter=6.0, area=2.0”

⑶类Triangle:实现ShapeArea接口,并有以下属性和方法:

①属性

x,y,z: double型,表示三角形的三条边

s: 周长的1/2(注:求三角形面积公式为)

s-

s

-

-,

x

(z

s

)(

)(

s

y s=(x+y+z)/2 ,开方可用Math.sqrt(double)方法)

②方法

Triangle(double x, double y, double z):构造函数,给三条边和s赋初值。

toString():输出矩形的描述信息,如“three sides:3.0,4.0,5.0,perimeter=12.0,area=6.0”

⑷Test类作为主类要完成测试功能

①生成Rectangle对象

②调用对象的toString方法,输出对象的描述信息

interface ShapeArea

{

double getArea();

double getPerimeter();

}

class Rectangle implements ShapeArea

{

double width,height;

Rectangle(double w,double h)

{ko

width =w;

height=h;

}

public void toString()

{

System.out.println("width="+width+",height="+height+", perimeter="+ getPerimeter()+", area="+ getArea());

}

public double getArea()

{

return width*height;

}

public double getPerimeter()

{

return 2*(width+height);

}

}

class Triangle implements ShapeArea

{

double x,y,z,s;

Triangle(double x, double y, double z)

{

this.x =x;

this.y=y;

this.z=z;

s = (x+y+z)/2;

}

public void toString()

{

System.out.println("Three Sides:"+x+","+y+","+z+",Perimeter="+ getPerimeter()+", area="+ getArea());

}

public double getArea()

{

return Math.sqrt(s*(s-x)*(s-y)*(s-z));

}

public double getPerimeter()

{

return x+y+z;

}

}

class test

{

public static void main(String[] args)

{

Rectangle rct = new Rectangle(4,5);

rct.to_String();

}

}

Java笔试题及答案

Java笔试题及答案 一、单项选择题 1.Java是从()语言改进重新设计。 A.Ada B.C++ C.Pasacal D.BASIC 答案:B 2.下列语句哪一个正确() A. Java程序经编译后会产生machine code B. Java程序经编译后会产生byte code C. Java程序经编译后会产生DLL D.以上都不正确 答案:B 3.下列说法正确的有() A. class中的constructor不可省略 B. constructor必须与class同名,但方法不能与class同名 C. constructor在一个对象被new时执行 D.一个class只能定义一个constructor 答案:C 详解:见下面代码,很明显方法是可以和类名同名的,和构造方法唯一的区别就是,构造方法没有返回值。 package net.study; public class TestConStructor { public TestConStructor() {

} public void TestConStructor() { } public static void main(String[] args) { TestConStructor testConStructor = new TestConStructor(); testConStructor.TestConStructor(); } } 4.提供Java存取数据库能力的包是() 答案:A 5.下列运算符合法的是() A.&& B.<> C.if D.:= 答案:A 详解: java 中没有<> := 这种运算符,if else不算运算符 6.执行如下程序代码 a=0;c=0; do{ --c; a=a-1; }while(a>0); 后,C的值是()

java模拟试题附答案(一)

scjp模拟试题(一) Question No: 1 1.public class test ( 2. public static void main (String args[]) { 3. int i = 0xFFFFFFF1; 4. int j = ~i; 5. 6. } 7. ) What is the decimal value of j at line 5? A. 0 B. 1 C. 14 D. –15 E. An error at line 3 causes compilation to fail. F. An error at line 4 causes compilation to fail. 答案: C Question No: 2 Given: Integer i = new Integer (42); Long 1 = new Long (42); Double d = new Double (42.0); Which two expressions evaluate to True? (Choose Two) A. (i ==1) B. (i == d) C. (d == 1) D. (i.equals (d))

E. (d.equals (i)) F. (i.equals (42)) 答案: D, E Question No: 3 Exhibit : 1. public class test ( 2. private static int j = 0; 3. 4. private static boolean methodB(int k) ( 5. j += k; 6. return true; 6. ) 7. 8. public static void methodA(int i) { 9. boolean b: 10. b = i < 10 | methodB (4); 11. b = i < 10 || methodB (8); 12. } 13. 14. public static void main (String args[] ) ( 15. methodA (0); 16. system.out.printIn(j); 17. ) 18. ) What is the result? A. The program prints “0” B. The program prints “4” C. The program prints “8”

JAVA笔试题--基础很全有答案

第一组 1.下列不可作为java语言修饰符的是(D) A) a1 B) $1 C) _1 D) 11 2.有一段java 应用程序,它的主类名是a1,那么保存它的源文件名可以是(A) A) a1.java B) a1.class C) a1 D) 都对 3.整型数据类型中,需要内存空间最少的是(D) A) short B) long C) int D) byte 4. Java 类可以作为(C) A) 类型定义机制 B) 数据封装机制 C) 类型定义机制和数据封装机制 D) 上述都不对 5.在创建对象时必须(C) A) 先声明对象,然后才能使用对象 B) 先声明对象,为对象分配内存空间,然后才能使用对象 C) 先声明对象,为对象分配内存空间,对对象初始化,然后才能使用对象 D) 上述说法都对 6.在调用方法时,若要使方法改变实参的值,可以(B) A) 用基本数据类型作为参数 B) 用对象作为参数 C) A和B都对 D) A和B都不对 7. Java中(C) A) 一个子类可以有多个父类,一个父类也可以有多个子类 B) 一个子类可以有多个父类,但一个父类只可以有一个子类 C) 一个子类可以有一个父类,但一个父类可以有多个子类 D) 上述说法都不对 8.Java语言具有许多优点和特点,哪个反映了Java程序并行机制的特点?(B) A) 安全性B) 多线性C) 跨平台D) 可移植 9. Character流与Byte流的区别是(C) A) 每次读入的字节数不同B) 前者带有缓冲,后者没有 C) 前者是字符读写,后者是字节读写D) 二者没有区别,可以互换使用

10.以下声明合法的是( D ) A、default String s; B、public final static native int w( ) C、abstract double d; D、abstract final double hyperbolicCosine( ) 11.关于以下application的说明,正确的是( C ) 1.class StaticStuff 2.{ 3.static int x=10; 4.static { x+=5;} 5.public static void main(String args[ ]) 6.{ 7.System.out.println(“x=”+ x); 8.} 9.static { x/=3;} 10. } A、4行与9行不能通过编译,因为缺少方法名和返回类型 B、9行不能通过编译,因为只能有一个静态初始化器 C、编译通过,执行结果为:x=5 D、编译通过,执行结果为:x=3 12.关于以下程序代码的说明正确的是( D ) 1.class HasStatic{ 2.private static int x=100; 3.public static void main(String args[ ]){ 4.HasStatic hs1=new HasStatic( ); 5.hs1.x++; 6.HasStatic hs2=new HasStatic( ); 7.hs2.x++; 8.hs1=new HasStatic( ); 9.hs1.x++; 10.HasStatic.x- -; 11.System.out.println(“x=”+x); 12.} 13.} A、5行不能通过编译,因为引用了私有静态变量 B、10行不能通过编译,因为x是私有静态变量 C、程序通过编译,输出结果为:x=103 D、程序通过编译,输出结果为:x=102 13.以下选项中循环结构合法的是( C ) A、while (int i<7) { i++;

java模拟试卷3与答案

复习题 3 一、选择题 1. JDK 提供的编译器是(B)。 (A ) java.exe(B ) javac.exe (C) javap.exe( D) javaw.exe 2.以下作为 Java 程序入口的 main 方法声明正确的( C)。 (A ) public void main(String args[]) (B ) public int main(String args[]) (C) public static void main(String args[]) (D ) public static int main(String args[]) 3.以下标识符错误的是( C )。 (A )Public( B)张三( C) class(D ) main 4.java 中定义字符串 String s= ”pzhu”,下面操作可以取得字符串长度的是( A )。 (A ) s.length()( B) s.length( C)s.size()( D) length(s) 5.如下定义数组,操作正确的是(D)。 int a[]={1,2,3}; (A ) a[3]=100(B ) a[0].length( C)a++( D) a.length 6.如下定义二维数组操作错误的是()。 int a[][]={{1,2},{3}}; (A ) a[0][1]=200( B) a[0].length( C) a[1][1]=100( D) a.length 7. 以下数据类型存储空间最大的是(B)。 (A ) byte( B) long(C) float(D ) char 8. 面向对象的三大特性,不包括如下( A)。 (A )异常( B)封装(C)继承(D )多态 9、关于类的定义以下说法错误(B)。 (A )类定义使用class 关键字( B)每个类中必须有一个main 方法 (C)一个包可以包含多个类( D) java 中所有类都是Object 类的子类 10. 关于构造方法以下说法错误的是(D)。 (A)构造方法名必须与类名一致(B)构造方法可以重载 (C)构造方法是通过new 来调用(D)每个类都必须编写构造方法代码 11.关于继承如下说法错误的是(C)。 (A) Java 是单继承的(B)通过extends 来定义继承 (C)所有父类方法都可以被override的(D)继承呈现的是 is a 的关系 12.以下代码执行的结果是 ( C )。 System.out.println(" 攀枝花学院 pzhu".length()); (A)编译错误(B)运行错误(C) 9(D) 14 13. 用来存储键值对的容器是 ()。 (A )ArrayList( B ) LinkedList(C) HashSet( D) HashMap 14、 java 中用来抛出异常的关键字是( C )。 (A) try(B) catch(C) throw(D) throws 15.关于 finally块中的代码,以下说法不正确的是(A)。 (A ) try 块中的 return 语句会中断finally 块中语句的执行 (B )无论 finally 块前的语句运行是否产生异常,其中的语句都会执行 (C) finally 块中的语句通常中用作资源的清理 - 1 -

Java基础笔试机试测试题(带答案)

Java基础考试题 班级:__________ 姓名:___________ 日期:_____________ 一、笔试(45题,每题2分) 1) 分析下面的Java程序段,编译运行后的输出结果是()。 public class Test { public static void changeString(StringBuffer sb) { sb.append("stringbuffer2"); } public static void main(String[] args) { StringBuffer sb = new StringBuffer("stringbuffer1"); changeString(sb); System.out.println("sb = " + sb.toString()); } } A. sb = stringbuffer2stringbuffer1 B. sb = stringbuffer1 C. sb = stringbuffer2 D. sb = stringbuffer1stringbuffer2 2) 在Java中,包有多种用途,但不包含()。 A. 将类组合成较小的单元,便于使用 B. 有助于避免命名冲突 C. 有助于提高运行效率 D. 允许在更广的范围内保护类、数据和方法 3) 在Java中,如果要在字符串类型s="java"中,得到字母'v' 出现的位置,选()语句。 A)s.matches('v'); B)s.charAt('v'); C)s.indexOf('v'); D)s.substring('v'); 4)下列代码运行后,变量c的值是()。 int a=15,b=10; double c=a/b; a) 1.5 b) 1.0 c) 1 d) 0 5)main方法如下所示,该程序的运行结果是()。 public static void main(String [] args){ int i=0; System.out.print(i++); } a) 输出0 b) 输出1 c) 编译错误d) 运行时出现异常

java笔试题及答案.doc

java笔试题及答案 有了下面java笔试题及答案,进行java笔试时就容易多了,请您对下文进行参考: 1、作用域public,private,protected,以及不写时的区别 答:区别如下: 作用域当前类同一package子孙类其他package public 7 7 7 7 protected 7 7 7 X friendly 7 7 X X private 7 X X X 不写时默认为friendly 2、Anonymouslnner Class (匿名内部类)是否可以exte nd s (继承)其它类,是否可以imple ment s (实现)i nterf ace (接口) 答:匿名的内部类是没有名字的内部类。不能exte n ds (继承)其它类,但一个内部类可以作为一个接口,由另一个内部类实现 3、Sta ti cNestedC las s 和Inner Clas s 的不同答: Nes tedC lass (一般是C+ +的说法),In ne rClass (—般是JAVA的说法)。J ava内部类与C++嵌套类最大的不同就在于是否有指向外部的引用上。注:静态内部类(I

nn erClass)意味着1创建一个st atic内部类的对象,不需要一个外部类对象,2不能从一个st atic内部类的一个对象访问一个外部类对象 4、和的区别 答:是位运算符,表示按位与运算,是逻辑运算符,表示遷辑与(and ) 5、Coll ect ion 和Col lect ions 的区别 答:Coll ect ion是集合类的上级接口,继承与他的接口主要有Set和List. Col lections是针对集合类的一个帮助类,他提供一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作 6、什么时候用assert 答:asserti on (断言)在软件开发中是一种常用的调试方式,很多开发语言中都支持这种机制。在实现中,a ssertion 就是在程序中的一条语句,它对一个boolea n表 达式进行检查,一个正确程序必须保证这个bool ean表达 式的值为tr ue;如果该值为fal se,说明程序己经处于不正确的状态下,系统将给出警告或退出。一般来说,

JAVA模拟试题(含答案)

一、请分别写出下面程序的运行结果,将答案添在每道题后的空格处 1. public class Test1 { public static void main(String[] args) { int x=10,y=20; System.out.print("x="+(x++)+" y="+(++y)+" sum="+(x+y)); } } 运行结果:x=10 y=21 sum=32 2. public class Test2 { public static void main(String[] args) { boolean end; for(int i=2;i<20;i++){ end=true; for(int j=2;j<=i;j++){ if(i%j==0&&j

B. constructor必须与class同名,但方法不能与class同名C. constructor在一个对象被new时执行 D.一个class只能定义一个constructor 5. 指针在任何情况下都可进行>, <, >=, <=, ==运算( true ) 6. 下面程序的运行结果:(B) public static void main(String args[]) { Thread t = new Thread() { public void run() { pong(); } }; (); "ping"); } static void pong() { "pong"); } A pingpong

B pongping C pingpong和pongping都有可能 D 都不输出 7. 下列属于关系型数据库的是(AB) A. Oracle B MySql C IMS D MongoDB 8. GC(垃圾回收器)线程是否为守护线程( true ) 9. volatile关键字是否能保证线程安全( false ) 10. 下列说法正确的是(AC) A LinkedList继承自List B AbstractSet继承自Set C HashSet继承自AbstractSet D WeakMap继承自HashMap 11. 存在使i + 1 < i的数吗(存在) 12. 的数据类型是(B) A float B double C Float D Double

java模拟试卷3及答案学习资料

复习题3 一、选择题 1.JDK提供的编译器是(B)。 (A)java.exe (B)javac.exe (C)javap.exe (D)javaw.exe 2.以下作为Java程序入口的main 方法声明正确的(C)。 (A)public void main(String args[]) (B)public int main(String args[]) (C)public static void main(String args[]) (D)public static int main(String args[]) 3.以下标识符错误的是(C)。 (A)Public (B)张三(C)class (D)main 4.java中定义字符串String s=”pzhu”,下面操作可以取得字符串长度的是(A)。(A)s.length() (B)s.length (C)s.size() (D)length(s) 5.如下定义数组,操作正确的是(D)。 int a[]={1,2,3}; (A)a[3]=100 (B)a[0].length (C)a++ (D)a.length 6.如下定义二维数组操作错误的是()。 int a[][]={{1,2},{3}}; (A)a[0][1]=200 (B)a[0].length (C)a[1][1]=100 (D)a.length 7. 以下数据类型存储空间最大的是( B )。 (A)byte (B)long(C)float (D)char 8. 面向对象的三大特性,不包括如下( A)。 (A)异常(B)封装(C)继承(D)多态 9、关于类的定义以下说法错误(B)。 (A)类定义使用class关键字(B)每个类中必须有一个main方法 (C)一个包可以包含多个类(D)java中所有类都是Object类的子类 10. 关于构造方法以下说法错误的是( D)。 (A)构造方法名必须与类名一致(B)构造方法可以重载 (C)构造方法是通过new来调用(D)每个类都必须编写构造方法代码 11.关于继承如下说法错误的是(C)。 (A)Java是单继承的(B)通过extends来定义继承 (C)所有父类方法都可以被override的(D)继承呈现的是is a的关系 12. 以下代码执行的结果是( C)。 System.out.println("攀枝花学院pzhu".length()); (A)编译错误(B)运行错误(C)9 (D)14 13. 用来存储键值对的容器是( )。 (A)ArrayList (B)LinkedList (C)HashSet (D)HashMap 14、java中用来抛出异常的关键字是(C)。 (A)try (B)catch (C)throw (D)throws 15.关于finally块中的代码,以下说法不正确的是(A)。

蓝桥杯java模拟试题

本试卷包含两种题型:“代码填空”与“程序设计”。 填空题要求参赛选手在弄清给定代码工作原理的基础上填写缺失的部分,使得程序逻辑正确、完整。所填写的代码不多于一条语句(即不能出现分号)。 编程题要求选手设计的程序对于给定的输入能给出正确的输出结果。注意:在评卷时使用的输入数据与试卷中给出的实例数据可能是不同的。选手的程序必须是通用的,不能只对试卷中给定的数据有效。1.代码填空(满分3分) 以下程序打印出0~9的数字,请补充缺少的代码。 public class MyTest { public static void f(int begin, int end) { __________________; System.out.println(begin); f(begin+1, end); } public static void main(String[] args) { f(0,9); } } if(begin>end) return;//相当于退出循环的条件。return 无返回值根据void 2.代码填空(满分4分) 如果要把两个整型变量a、b的值交换,一般要采用一个中间变量做过渡,但也可以在不借助任何其它变量的情况下完成。试填写缺失的代码。 a = a ^ b; b = _________; a = _________; a^b a^b 3.代码填空(满分3分) 许多人都曾经玩过“拍七”游戏。规则是:大家依次从1开始顺序数数,数到含有7或7的倍数的要拍手或其它规定的方式表示越过(比如:7,14,17,71等都不能数出),下一人继续数下面的数字。违反规则者受罚。下面的程序模拟这个过程,拍7的情况输出“*”,请完善之。 for(int i=1; i<100; i++) { if(i % 7 == 0) System.out.println("*"); else if(___________________) System.out.println("*"); else System.out.println(i); } (i-7)%10==0||i/10==7 // i/10==7||i%10==7 4.代码填空(满分5分)

Java经典面试题大全_带答案

Java经典面试题带答案一、单项选择题 1.Java是从()语言改进重新设计。 A.Ada B.C++ C.Pasacal D.BASIC 答案:B 2.下列语句哪一个正确() A.Java程序经编译后会产生machine code B.Java程序经编译后会产生byte code(字节码) C.Java程序经编译后会产生DLL D.以上都不正确 答案:B 3.下列说法正确的有() A.class中的constructor不可省略 B.constructor必须与class同名,但方法不能与class同名C.constructor在一个对象被new时执行(构造器) D.一个class只能定义一个constructor 答案:C 4.提供Java存取数据库能力的包是() A.Java.sql /sql/数据库还有Oracle 也是一种数据库 B.java.awt C.https://www.wendangku.net/doc/139189556.html,ng D.java.swing 答案:A 5.下列运算符合法的是() A.&& B.<> C.if D.:= 答案:A 6.执行如下程序代码 a=0;c=0; do{ --c; a=a-1; }while(a>0); 后,C的值是() A.0 B.1 C.-1 D.死循环

答案:C 7.下列哪一种叙述是正确的() A.abstract修饰符可修饰字段、方法和类 B.抽象方法的body部分必须用一对大括号{}包住 C.声明抽象方法,大括号可有可无 D.声明抽象方法不可写出大括号 答案:D 8.下列语句正确的是() A.形式参数可被视为localvariable B.形式参数可被字段修饰符修饰 C.形式参数为方法被调用时,真正被传递的参数 D.形式参数不可以是对象 答案:A 9.下列哪种说法是正确的() A.实例方法可直接调用超类的实例方法 B.实例方法可直接调用超类的类方法 C.实例方法可直接调用其他类的实例方法 D.实例方法可直接调用本类的类方法 答案:D 二、多项选择题 1.Java程序的种类有() A.类(Class) B.Applet C.Application D.Servlet 2.下列说法正确的有() A.环境变量可在编译sourcecode时指定 B.在编译程序时,所能指定的环境变量不包括class path C.javac一次可同时编译数个Java源文件 D.javac.exe能指定编译结果要置于哪个目录(directory)答案:BCD 3.下列标识符不合法的有() A.new B.$Usdollars C.1234 D.car.taxi 答案:ACD 4.下列说法错误的有() A.数组是一种对象 B.数组属于一种原生类 C.intnumber=[]={31,23,33,43,35,63} D.数组的大小可以任意改变 答案:BCD 5.不能用来修饰interface的有()

java模拟试卷及答案及解析4

复习题4 一、选择题 1.在面向对象的方法中,一个对象请求另一个对象为其服务的方式是通过发送( D ) A、调用语句 B、命令 C、口令 D、消息 2.Java语言具有许多优点和特点,下列选项中,哪个反映了Java程序并行机制的特点:( B ) A、安全性 B、多线程 C、跨平台 D、可移值 3.编写和运行Java applet程序与编写和运行Java application程序不同的步骤是:( B ) A、编写源代码 B、编写HTML文件调用该小程序,以.html为扩展名存入相同文件夹 C、编译过程 D、解释执行

4.Java的字符类型采用的是Unicode编码方案,每个Unicode码占用____个比特位。( B ) A、8 B、16 C、32 D、64 5.关于下列程序段的输出结果,说法正确的是:( D ) public class MyClass{ static int i; public static void main(String argv[]){ System.out.println(i); } } A、有错误,变量i没有初始化。 B、null C、1 D、0 6.下列代码的执行结果是:( B ) public class Test3{ public static void main(String args[]){ System.out.print(100%3);

. System.out.print(","); System.out.println(100%3.0); } } A、1,1 B、1,

C、1.0,1 D、1.0,1.0 7.下列程序段的输出结果是:( B ) void complicatedexpression_r(){ int x=20, y=30; boolean b; b=x>50&&y>60||x>50&&y<-60||x<-50&&y>60||x<-50&&y<-60; System.out.println(b); } A、true B、false C、1 D、0 8.给出下列代码片段:( D ) if(x>0){System.out.println("first");} else if(x>-3){ System.out.println("second");} else {System.out.println("third");} 请问x处于什么范围时将打印字符串“second”? A、x>0 B、x>

Java开发工程师笔试题(带答案)

Java开发工程师笔试试题 (请不要在试题上留任痕迹,所有答案均写在答题纸上) 一.编程题(共26分) 1.任意写出一种排序算法。(6分) public void sort(int [] array){ //代码区 } 2.求1+2+3+..n(不能使用乘除法、for 、while 、if 、else 、switch 、case 等关键字 以及条件判断语句)(8分) public int sum(int n){ //代码区 return 0; } 3.完成下面法,输入一个整数,输出如下指定样式图案。(12分) 输入:3, 输出: 1*2*3 7*8*9 4*5*6

输入:4 输出: 1*2*3*4 9*10*11*12 13*14*15*16 5*6*7*8 public void drawNumPic(int n){ //代码区 } 二.选择题(定项选择每题3分,不定项选择每题4分,共63分) 1.在基本JAVA类型中,如果不明确指定,整数型的默认是__类型,带小数的默认是__类型?( B ) A.int float B.int double C.long float D.long double 2.只有实现了__接口的类,其对象才能序列化( A ) A.Serializable B.Cloneable https://www.wendangku.net/doc/139189556.html,parable

D.Writeable 3.代码System. out. println(10 % 3 * 2);将打印出?( B ) A. 1 B.2 C.4 D.6 4.以下程序运行的结果为( A ) public class Example extends Thread{ @Override public void run(){ try{ Thread.sleep(1000); }catch (InterruptedException e){ e.printStackTrace(); } System.out.print("run"); } public static void main(String[] args){ Example example=new Example(); example.run(); System.out.print("main"); } } A.run main B.main run C.main D.run E.不能确定 5.下面有关java实例变量,局部变量,类变量和final变量的说法,错误的是?( B ) A.实例变量指的是类中定义的变量,即类成员变量,如果没有初始化,会有默认值

JAVA模拟面试题库

JAVA基础部分 1. 我们能不能声明main()方法为非静态? 不能,main()方法必须声明为静态的,这样JVM才可以调用main()方法而无需实例化它的类。 如果从main()方法去掉“static”这个声明,虽然编译依然可以成功,但在运行时会导致程序失败。 2.不用main方法如何定义一个类? 不行,没有main方法我们不能运行Java类。 在Java 7之前,你可以通过使用静态初始化运行Java类。但是,从Java 7开始就行不通了。 3. String类为什么是final的。 主要是为了“效率”和“安全性”的缘故。若String允许被继承,由于它的高度被使用率,可能会降低程序的性能,所以String被定义成final; 4.使用final 关键字修饰一个变量时,是引用不能变,还是引用的对象不能变? 使用final 关键字修饰一个变量时,是指引用变量不能变,引用变量所指向的对象中的容还是可以改变的。 5. string、stringbuilder、stringbuffer区别 a.可变与不可变 String类中使用字符数组保存字符串,如下就是,因为有“final”修饰符,所以可以知道string对象是不可变的。 private final char value[];

StringBuilder与StringBuffer都继承自AbstractStringBuilder类,在AbstractStringBuilder 中也是使用字符数组保存字符串,如下就是,可知这两种对象都是可变的。 char[] value; b.是否多线程安全 String中的对象是不可变的,也就可以理解为常量,显然线程安全。 AbstractStringBuilder是StringBuilder与StringBuffer的公共父类,定义了一些字符串的基本操作,如expandCapacity、append、insert、indexOf等公共方法。 StringBuffer对方法加了同步锁或者对调用的方法加了同步锁,所以是线程安全的StringBuilder并没有对方法进行加同步锁,所以是非线程安全的 c.StringBuilder与StringBuffer共同点 StringBuilder与StringBuffer有公共父类AbstractStringBuilder(抽象类)。 抽象类与接口的其中一个区别是:抽象类中可以定义一些子类的公共方法,子类只需要增加新的功能,不需要重复写已经存在的方法;而接口中只是对方法的申明和常量的定义。 StringBuilder、StringBuffer的方法都会调用AbstractStringBuilder中的公共方法,如super.append(...)。只是StringBuffer会在方法上加synchronized关键字,进行同步。 最后,如果程序不是多线程的,那么使用StringBuilder效率高于StringBuffer。 6. 抽象类和接口的区别 1).抽象类可以有构造方法,接口中不能有构造方法。 2).抽象类中可以有普通成员变量,接口中没有普通成员变量 3).抽象类中可以包含非抽象的普通方法,接口中的所有方法必须都是抽象的,不能有非抽象的 普通方法。 4). 抽象类中的抽象方法的访问类型可以是public,protected 和(默认类型,虽然 eclipse 下不报错,但应该也不行),但接口中的抽象方法只能是public 类型的,并且默认即为 public abstract 类型。 5). 抽象类中可以包含静态方法,接口中不能包含静态方法

最新最新java笔试题及答案

一.选择题(1-10题每题2分,11-15题每题4分) 1.下面关于Java语言说法错误的是:() A.java语言是完全面向对象的 B。java语言支持多继承 C.java语言支持多线程 D。java语言最早是为消费电子产品领域设计的 2.下面标识符中正确的是:() A.*123 B。12java C.continue D。java$next 3.下列关于注释语句的描述中,正确的一项是() A。以//开始的是多行注释语句 B。以/*开始,*/结束的是单行注释语句 C。以/**开始,*/结束的是可以用于生成帮助文档的注释语句 D。以/**开始,*/结束的是单行注释语句 4.为了区分重载多态中同名的不同方法,要求()。 A)形式参数个数或者类型不同 B)返回值类型不同 C)调用时用类名或对象名做前缀 D)形式参数名称不同 5.下面定义数组的格式中正确的是:() A.int a[10] B。int a=new int[10] C.int []a=new int[5] D.int a[] 6.下面说法中不正确的是:() A.类是对象的抽象,对象是类的实例 B。类是组成java程序的最小的单位 C.java语言支持多继承 D。java一个程序中只能有一个public类 7.定义类时,不可能用到的保留字是()。 A) private B) class C) extends D) implements 8.为 AB 类的定义一个公共的构造函数,该方法头的形式为()

A.void AB( ) B。public void method( ) C.public method ( ) D。public AB( ) 9.下面说法中不正确的是:() A.java中一个类只允许实现一个接口 B。抽象类中允许有非抽象方法的存在 C.类变量(实例变量)可以直接用类名调用 D。通过super可以调用基类的构造函数 10.容器JFrame 默认使用的布局编辑策略是() A.BorderLayout B。FlowLayout C。GridLayout D。CardLayout 11.以下哪个表达式是不合法的() A.String x=”Hello”; int y=9; x+=y; B.String x=”Hello”; int y=9; if(x= =y) { } C.String x=”Hello”; int y=9; x=x+y; D.String x=null; int y=(x!=null)&&(x.length()>0) 12.class person { public int addvalue(int a,int b) { int s; s=a+b; return s; } }

Java面向对象模拟试题1

一、判断题(正确的描述打钩,错误的打叉,每题1分,共10分) 1 抽象类中不可以有非抽象的方法。(错) 2 如果将一个对象强制类型转换为一个不兼容的类型,将引发NullPointerException 异常。(错) 3 Java中Object类是最顶层的类。(对) 4 程序在编译通过以后,仍然可能出现运行时错误和逻辑错误。(对) 5 可以通过javac来运行一个Java Application。(错) 6 可以在子类构造函数中通过this关键字调用基类的构造函数。(错) 7 Java语言是IBM公司设计的一种面向对象程序设计语言。(错) 8 一个Unicode字符占4个字节。(错) 9 在循环语句中,使用continue;语句可以跳出循环。(错) 10 在Java Application中如果没有定义main()方法,则程序不能编译。(错) 二、简答题(请将答案写到答题纸上,注明题号。每题3分,共30分) 1 请看以下代码: package mytest; public class Main { public static void main(String[] args) { System.out.println(new A()); } } class A {

} Java在运行上述代码时输出一个很奇异的结果: mytest.A@60aeb0 尝试解释一下可能的原因. 点评: 本题的关键在于虽然类A没有定义任何方法,但它隐含着从基类Object中继承了toString()方法。答案必须点出这一结果是执行toString()方法得到的。 2 什么叫多态?你是如何理解多态的?请设计一个简单的示例,展示多态的用法。 点评: 几乎所有的Java教材都要介绍多态的概念,但只有能用自己的语言说清楚,并能自己设计一个典型实例展示多态特性的,才算是真正弄明白了。 从试卷中发现,不少同学弄混了方法重载与方法覆盖,认为“方法重载”就是多态。 3 在Java GUI程序中,布局管理器是一个很重要的概念。谈谈你对这个概念的理解,并进而回答以下问题: 如果要你开发出一个Windows资源管理器(图 1),你将如何应用合适的“布局管理器”来实现其界面? 图 1 Windows 7中的资源管理器 请指明你在图 1中的哪部分应用哪种布局管理器。 4 int和Integer都可以代表一个整数,这两者在使用上有什么区别吗?为什么JDK中要设计两个数据类型来表示同一种数据? 5 Java Application的程序入口点为main()函数,其声明如下: public static void main (String[] args) 请解释一下为何main()函数是公有的和静态的?

Java面试题(带答案)

湖南世杰Java工程师面试题选择题: 单选题 1,以下java程序代码,执行后的结果是( ) java.util.HashMap map=newjava.util.HashMap(); map.put("name",null); map.put("name","Jack"); System.out.println(map.size()); A: 0 B: null C: 1 D: 2 答案:C 2,执行以下程序后的输出结果是( ) Public class Test { Public static void main(String[] args) { StringBuffer a = new StringBuffer("A"); StringBuffer b = new StringBuffer("B"); operator(a, b); System.out.println(a +","+ b); } Public static void operator(StringBuffer x, StringBuffer y) { x.append(y); y = x; }

} A: A,A B: A,B C: B,B D: AB,B 答案:D 3,关于依赖注入,下列选项中说法错误的是( ) A:依赖注入能够独立开发各组件,然后根据组件间关系进行组装 B:依赖注入使组件之间相互依赖,相互制约 C:依赖注入提供使用接口编程 D:依赖注入指对象在使用时动态注入 答案:B 4,关于spring说法错误的是( ) A: spring是一个轻量级JAVA EE的框架集合 B: spring是“依赖注入”模式的实现 C: 使用spring可以实现声明事务 D: spring提供了AOP方式的日志系统 答案:D 5,要在session对象中保存属性,可以使用以下哪个语句( ) A: session.getAttribute(“key”,”value”) B: session.setAttribute(“key”,”value”) C: session.setAttribute(“key”) D: session.getAttribute(“key”) 答案:B 6,关于以下程序代码的说明正确的是?( ) Public class HasStatic{ Private static int x = 100;

相关文档