1.下面说法正确的是()
A. JVM就是Java虚拟机,包含java核心类库 // JRE: JVM+Java library。
B. JRE就是java运行环境,包含java程序编译运行的工具环境// JDK:JRE+Tools
C. JDK就是java开发环境,javac是其中的一个工具
D. 功能范围:JDK > JVM > JRE
2.下面的说法正确的是( )
A. Java 语言是面向对象的、解释执行的网络编程语言。
B. Java 语言具有可移植性,是与平台无关的编程语言。
C. Java 语言可对内存垃圾自动收集。
D. Java 语言编写的程序虽然是“一次编译,到处运行”,但必须要java的运行环境。
3.给定java代码,如下:
public byte count(byte b1, byte b2){
return ____;
}
要使这段代码能够编译成功,横线处可以填入
A. (byte)(b1-b2) //返回值类型为byte,要求选项结果为byte
B. b1-b2
C. (byte)b1+b2
D. (byte)b1/b2
4.关于类的命名,正确说法是()
A. 可以由数字和英文拉丁字母组成,且可以任意排序 //数字不能开头
B. 命名要做到见名知意
C. 如果是由多个单词组成,每个单词首字母大写
D. 可以是Java已经定义过的关键字 //囧
6.类中某方法定义如下:
double fun(int a,int b){
return a*1.0/b;
}
同一类内其它方法调用该方法的正确方式是:
A. double a = fun(1,2);
B. double a = fun(1.0,2.0);
C. int x = fun(1,2);
D. int x = fun(1.0,2.0);
7.给定java代码,如下,编译运行,结果是()
public static void main(String[] args){
boolean flag;
System.out.println(“flag”+flag); //局部变量需要先初始化再使用
}
A. 编译错误
B. 编译通过,单出现运行时错误
C. 正常运行,输出flag=false
D. 正常运行,输出flag=
8.下面哪个关键字可以定义一个类()
A. interface
B. class //查看下面解释
C. extends
D. implements
在Oracle官网java英文原版教程,链接地址:
https://docs.oracle.com/javase/tutorial/java/IandI/createinterface.html上有如下解释:
In the Java programming language, an interface is a reference type, similar to a class, that can contain only constants, method signatures, default methods, static methods, and nested types. Method bodies exist only for default methods and static methods. Interfaces cannot be instantiated—they can only be implemented by classes or extended by other interfaces. Extension is discussed later in this lesson.
9.byte类型的取值范围是()
A. -256至255
B. -255至255
C. -128至127 //*/?#%¥@*&……
D. -127至128
11.下面程序执行的结果是?( )
class Test
{
public static void main(String[] args)
{
System.out.println(““+’a’+1); // + 在这里是连接符,任何数据和字符串连接后,都是字符串
}
}
A. 98
B. a1
C. 971
D. 197
12.for循环格式如下:
for(表达式1;表达式2;表达式3){
//code
}
下面描述错误的是()
A. 表达式1处的代码会被执行多次 //只能一次
B. 表达式1处可以定义变量
C. 表达式3用于决定循环是否应该结束 //表达式2
D. 表达式2的值可以是任意类型,也可以是boolean类型 //只能是boolean
16.下面程序执行的结果是?()
int i = 100;
while(true)
{
if (i++ > 100)
{
break;
}
System.out.println(i);
}
// continue(跳出本次循环) , break(跳出,结束本循环) , return(跳出,结束方法)
A. 100
B. 101
C. 102
D. 报错
17.下面关于Java语言跨平台说法错误的是:
A. java语言编写的程序,一次编译后,可以在多个系统平台上运行。
B. java语言垮平台依赖于java虚拟机
C. java垮平台,java虚拟机也是垮平台的(不同系统平台使用相同的java虚拟机)
D. 原理是java程序是通过java虚拟机在系统平台上运行的,只要该系统可以安装相应的java虚拟机,该系统就可以运行java程序。
18.下面程序的运行结果是 ( )
int a=3, b=1;
if(a==b) //false
{
System.out.println("a="+a);
}
A. a=1
B. a=3
C. 编译错误
D. 正常运行但没有输出
19.下面程序的运行后,结果正确的是:
int a=1,b=2;
int c=(a+b>3?a++:++b); //三元运算符如果不成立的话,那么a++不会执行,a还是1.
A. a=2,b=3
B. a=1,b=3
C. a=1,b=2
D. c=2
20.定义如下的二维数组b,下面的说法正确的是( )
int b[][]={{1, 2, 3}, {4, 5},{6, 7, 8}}};
A. b.length的值是3
B. b[1].length的值是3 //2
C. b[1][1]的值是5
D. 二维数组b的第一个元素有3个子元素
22.下面程序的运行结果
class Demo
{
public static int fun(int c)
{
return c+=2; //因为return了,return的是4
}
public static void main(String[] args)
{
int temp = fun(2);
System.out.println(temp);
}
}
A. 2
B. 4
C. 6
D. 8
23.下列方法定义中,正确的是( )。
A) int x( ){ return true; } //返回值类型为int,不能返回boolean
B) void x( ){ return true; } //没有返回值,不能返回boolean
C) int x( ){ char ch='a'; return (int)ch; }
D) int x( int a, int b){ return a+b; }
24.下面数组定义正确的是()
A. int [] arr ={23,45,65,78,89};
B. int [] arr=new int[10]{}; //[数组]与{}不能共存
C. int [] arr=new int[4]{3,4,5,6}; //[]与{}不能共存
D. int [] arr={"a",23 ,45,6}; //byte, short,char ------>> int ‘a’会自动转换成97,但是String类型的a不会自动转换成97
25.下面程序执行的结果是?( )
int x =1,y=1;
if(x++==2 & ++y==2)
{
x=7;
}
System.out.println("x="+x+" , y="+y);
A. x=1 y=2
B. x=7 y=1
C. x=7 y=2
D. x=2 y=2
26.JDK1.7之后,switch语句后括号里的表达式可以是以下哪种类型()//记住
A. char
B. String
C. long
D. 枚举类型
27.同一类中有两个以上方法同名称方法重载,Java语言规定():
A. 不允许重载
B. 重载方法的参数列表必须不同
C. 重载方法的返回值类型必须不同 //与返回值类型无关
D. 重载方法的参数列表和返回值类型必须都不同。
28.下面程序执行的结果是?( )
boolean b=true;
if(b=false) //false
{
System.out.println("a");
}
else if(b) //false
{
System.out.println("b");
}
else if(!b) //true
{
System.out.println("c");
}
else
{
System.out.println("d");
}
A. a
B. b
C. c
D. d
30.下面程序执行的结果是?()
int x=2,y=3;
switch(x)
{
default:
y++;
case 3:
y++;
case 4:
y++;
}
System.out.println("y="+y); //没有break
A. 3
B. 4
C. 5
D. 6
31.阅读下面代码段:
public class Demo
{
public static void main (String[] args)
{
int[] arr = new int[10];
System.out.println(arr[1]);
}
}
执行结果正确的说法是( )
A. 编译时将产生错误
B. 编译时正确,运行时将产生错误
C. 输出零 //默认初试化
D. 输出空
32.设有定义 float x=3.5f, y=4.6f, z=5.7f; 则以下的表达式中,值为false的是( )
A. x > y || x > z
B. x < y & ! ( x < z )
C. z > ( y + x )
D. x != y
33.和下面代码执行结束后,sum结果一致的选项是()
int i=1;
int sum=0;
while(i<=100)
{
if(i%2==0)
{
sum=sum+i;
}
i++;
}
A. for (int x =1; x<=100;x++){ sum=sum+x;}
B. for (int x =0; x<=100;x+=2){ sum=sum+x;}
C. for (int x =1; x<=100;x+=2){ sum=sum+x;}
D.上述全对
34.下面不属于基本数据类型的是()
A. int
B. double
C. Long //不是基本数据类型,就是引用数据类型
D. int[] //讲过,引用数据类型
35.下面哪个不是java中的关键字?( )
A. public
B. true
C. main //标示符
D. class
36.以下代码输出是( )
int i=0;
int sum=0;
while(i<=10)
{
i++;
if( i%2 !=0 )
continue;
sum+=i;
}
System.out.println(sum);
A. 55
B. 45
C. 35
D. 30
38.下面程序执行的结果是( )
class Demo
{
public static void main(String [] args)
{
int a=10;
if(a++>10)
{
a=20;
}
System.out.println(a);
}
}
A. 11
B. 12
C. 20
D. 21
39.下列语句序列执行后,i的值是( )。
int i=16;
do {
i/=2;
} while( i > 3 );
A. 16
B. 8
C. 4
D. 2
40.定义变量如下:
char c='w'; int i=8; long L=15; float f=8.9f;
以下赋值语句正确的是( )。
A. i=c+i;
B. c=c+i; //char 到int需要强转
C. L=f+L; //float>long,需要强转
D. f=i+L+f;作者: 水月灬清影 时间: 2016-9-2 21:14
可有标准答案? 作者: 唐雨忆 时间: 2016-9-2 22:20
正好是我今天晚上的考试题作者: 584444948 时间: 2016-9-2 22:22
我都看不懂 大神