Java选择题
Posted 今天你学Java了吗
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java选择题相关的知识,希望对你有一定的参考价值。
JAVA习题册
文章目录
语言基础
JAVA开发环境
1、(单选题)Java编程语言之父是()
A.James Gosling
B.Abigail
C.Brutus
D.以上选项都不对
【正确答案】A
【答案解析】詹姆斯·高斯林 (James Gosling,1955年5月19日-,出生于加拿大),软件专家,Java编程语言的共同创始人之一,一般公认他为“Java之父”。
2、(单选题)Java是从()语言改进重新设计
A.Ada
B.C++
C.Pasacal
D.BASIC
【正确答案】B
【答案解析】ADA: 美国军方为了整合不同语言开发的系统而发明的一种语言,最大的特点是实时性,在ADA95中已加入面向对象内容. Pascal: 为提倡结构化编程而发明的语言,结构化特色非常明显,函数体内允许任意层次的嵌套. BASIC: 为了让大学生简单容易控制电脑开发的语言,特点是简单易懂,且可以用解释和编译两种方法执行.
3、(单选题)在Java中,以下描述错误的是( )
A…class是源文件
B…java是编译前的源文件
C…class是编译后的文件
D.Java程序需编译后方可运行
【正确答案】A
【答案解析】此题目考查的是Java程序的开发过程。Java程序开发需要经过三个步骤:编写(.java)、编译(.class)、运行。编写的源程序为.java后缀的,编译后为.class的字节码文件,因此选项B、C是正确的,A是错误的。Java文件都需要进行编译,编译后的.class文件可以"一次编译、多次运行",即体现了Java的特点"Write Once,Run more"。因此D是正确的选项。
4、(单选题)在控制台运行一个 Java 程序 TestDemo . class ,使用的命令正确的是( )
A.java TestDemo. class
B.javac TestDemo. class
C.java TestDemo
D.javac TestDemo
【正确答案】C
【答案解析】java命令程序执行字节码文件时不能跟文件后缀名 因此C是正确的选项。
5、(多选题)下列哪些选项属于Java技术体系()
A.Java Me
B.Java Se
C.Java EE
D.Java Card
【正确答案】A,B,C,D
【答案解析】Java Card、Java Me、Java Se、Java EE都属于Java技术体系
6、(多选题)下列描述中,哪些符合 Java 语言的特征( )
A.支持跨平台(Windows,Linux,Unix等)
B.GC(自动垃圾回收),提高了代码安全性
C.支持类 C 的指针运算操作
D.不支持与其它语言书写的程序进行通讯
【正确答案】A,B
【答案解析】java语言支持跨平台,没有指针的概念,拥有GC垃圾自动回收机制。
7、(多选题)下列对Java语言的叙述中,正确的是()
A.Java虚拟机解释执行字节码
B.Java的类是对具有相同行为对象的一种抽象
C.Java中的垃圾回收机制是一个系统级的线程
D.JDK的库文件目录是bin
【正确答案】A,B,C
【答案解析】在JDK目录结构中,lib目录下存放的都是库文件,而bin目录下有编译器、解释器和许多工具(如服务器工具、IDL、package工具和jdb等)。
变量
1、(单选题)阅读下列代码; 其运行结果是()
public class Test
String s="One World One Dream";
public static void main(String args[])
System.out.println(s);
A.args
B.One World One Dream
C.s
D.编译错误
【正确答案】D
【答案解析】main方法是程序执行的入口,在本程序中main方法中的语句"System.out.println(s);"无法调用在main方法外声明的变量,所以编译时出错。
2、(单选题)下列Java代码的运行结果是()。
public class Test
public static void main(String[] args)
String s = "m";
System.out.println(s+100+200);
System.out.println(100+200+s);
A.“m100200 300m”
B.“m100200 100200m”
C.“m300 300m”
D.“m300 100200m”
【正确答案】A
【答案解析】此题目考查的是Java中的字符串拼接运算符。 本题中,变量s为字符串类型,所以此时s+100为字符串的拼接,也就是m100,再+200依然是字符串的接拼,所以第一句的输出结果为m100200。 在第二句输出中,100+200做的是算术运算,结果为300,再+s做的是字符串的拼接,所以结果为300m。
3、(单选题)在Java语言中,被称为内存分配的运算符是()
A.()
B.[]
C.new
D.==
【正确答案】C
【答案解析】Java语言中,程序为对象动态分配内存。Java中内存分配的运算符是new。
JAVA基本类型
1、(单选题)能够给一个byte型变量赋值的范围是( )。
A.0~65535
B.(-128)~127
C.(-32, 768)~32, 767
D.(-256)~255
【正确答案】B
【答案解析】Byte的取值范围是(-128)~127。
2、(单选题)java中char类型的取值范围是()
A.0 … 32767
B.0 … 65535
C.–256 … 255
D.–32768 … 32767
【正确答案】B
【答案解析】在java中,char是一个无符号16位类型,取值范围为0到65535。
3、(单选题)java语言中int类型数据占用多少位?( )。
A.32
B.20
C.16
D.64
【正确答案】A
【答案解析】Byte类型占8位short类型占16位Int类型占32位long类型占64位
4、(单选题)存储一个24X24点阵的汉字(每个点1bit),需要多少字节( )
A.24
B.48
C.72
D.144
【正确答案】C
【答案解析】24 * 24 / 8=72。意思是:24*24的结果是二进制位,而八个二进制位等于 一个字节,所以再除以八是所得的字节数。
基本类型间转换
1、(单选题)隐式类型转换是由按优先关系从低到高的顺序,下列描述正确的顺序为( )
A.char-int-long-float-double
B.int-long-float-double-char
C.long-float-int-double-char
D.以上都不对
【正确答案】A
【答案解析】隐式类型转换规则是: byte→short(char)→int→long→float→double
运算符和表达式
1、(单选题)若a为整型变量,a=12,则表达式:a * =2+3的值为
A.12
B.24
C.36
D.60
【正确答案】D
【答案解析】此题的计算结果a=(2+3)*12,即a=60. 因此D选项是正确的选项.
2、(单选题)下列程序的运行结果正确的是
int a = 5; int b = ++a;
System.out.println(“a=”+a);
System.out.println(“b=”+b);
A.a=5,b=5
B.a=6,b=5
C.a=5,b=6
D.a=6,b=6
【正确答案】D
【答案解析】++和—可以出现操作数的左边也可以是右边,此题++出现在左边,让a先执行自增运算,然后将值赋值给变量b 因此D是正确的选项。
3、(单选题)编译运行以下程序后,关于输出结果的说明正确的是( )
public class Conditional
public static void main(String args[])
int x=4;
System.out.println("value is "+ ((x<4) ? 99.9 : 9));
A.输出结果为:value is 99.99
B.输出结果为:value is 9
C.输出结果为:value is 9.0
D.编译错误
【正确答案】C
【答案解析】三目运算符中:第二个表达式和第三个表达式中如果都为基本数据类型,整个表达式的运算结果由容量高的决定。99.9是double类型而9是int类型, double 容量高。
4、(单选题)以下表达式那个是不合法的()
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) ? x.length() : 0;
【正确答案】B
【答案解析】java对"+“进行了扩展,不仅可以连接字符串,而且还能将字符串与其它类型数据进行连接,结果是字符串。 若”+“的第一个操作数是字符串,Java会自动将后面的操作数类型转换成字符串类型。 本题选项A中,x+=y即x=x+y,则计算结果x的值为字符串Hello9; 选项C与此类似,故此选项也是正确的; 选项D主要考查的是三目运算符”?:“,即把表达式(x!=null)&&(x.length()>0) ? x.length() : 0的值赋给整型变量y,运行结果y的值是0; 而选项B是因为”=="两边的类型不匹配,无法比较,所以此表达式是错误的。
循环结构
1、(单选题)选择下面代码的运行结果:( )
public class Test
public void method()
for(int i = 0; i < 3; i++)
System.out.print(i);
System.out.print(i);
A.0122
B.0123
C.编译错误
D.没有任何输出
【正确答案】C
【答案解析】i变量的作用范围是整个for循环中。
数组
1、(单选题)对记录序列314,298,508,123,486,145按从小到大的顺序进行插入排 序,经过两趟排序后的结果为()
A.314,298,508,123,145,486
B.298,314,508,123,486,145
C.298,123,314,508,486,145
D.123、298,314,508,486,145
【正确答案】B
【答案解析】此题为插入排序算法,代码如下:
public static void injectionSort(int[] number) // 第一个元素作为一部分,对后面的部分进行循环 for (int j = 1; j < number.length; j++) int tmp = number[j]; int i = j - 1; while (tmp < number[i]) number[i + 1] = number[i]; i--; if (i == -1) break; number[i + 1] = tmp;
2、(多选题)下列说法错误的有()
A.数组是一种对象
B.数组属于一种原生类
C.int number=[]=31,23,33,43,35,63
D.数组的大小可以任意改变
【正确答案】B,C,D
【答案解析】数组不是原生类:int double boolean float byte short long char ,初始化多大就是多大
方法
1、(单选题)关于 Java 类中带参数的方法,下列选项中说法错误的是
A.使用带参数的方法分为两步:定义带参数的方法,调用带参数的方法
B.带参数方法的返回值不能为 void
C.带参数方法的参数个数可以为一个或多个
D.带参数方法的参数可以是任意的基本类型数据或引用类型数据
【正确答案】B
【答案解析】带参数方法的返回值可以为 void 因此B是正确的选项。
面向对象
对象和类
1、(单选题)请问,以下哪些修饰符不能用于顶层类?
A.public
B.private
C.abstract
D.final
【正确答案】B
【答案解析】对于顶层类(外部类)来说,只有两种修饰符:public和默认(default)。 因为外部类的上一单元是包,所以外部类只有两个作用域:同包,任何位置。 因此,只需要两种控制权限:包控制权限和公开访问权限,也就对应两种控制修饰符:public和默认(default)。 但是private可以修饰class的,只不过该类不能使顶层类,可以是内部类 内部类的上一级是外部类,那么对应的有四种访问控制修饰符:本类(private),同包(default),父子类(protected),任何位置(public)。 当一个内部类使用了private修饰后,只能在该类的外部类内部使用
2、(多选题)下列说法错误的有( )
A.在类方法中可用 this 来调用本类的类方法
B.在类方法中调用本类的类方法时可直接调用
C.在类方法中只能调用本类中的类方法
D.在类方法中绝对不能调用实例方法
【正确答案】A,C,D
【答案解析】A在类方法中不能使用 this 关键字。C在类方法中可以调用其它类中的类方法。D在类方法中可以通过实例化对象调用实例方法。
3、(多选题)下面选项中哪两个可以在 A 的子类中使用( )
class A
protected int method1 (int a, int b)
return 0;
A.public int method1(int a, int b) return 0;
B.private int method1(int a, int b) return 0;
C.private int method1(int a, long b) return 0;
D.public short method1(int a, int b) return 0;
【正确答案】A,C
【答案解析】B子类重写父类的方法,访问权限不能降低;C属于重载;D子类重写父类的方法如果返回值类型是基本类型的话,要求相同。
JAVA内存管理
1、(单选题)栈是一种( )
A.存取受限的线性结构
B.存取不受限的线性结构
C.存取受限的非线性结构
D.存取不受限的非线性结构
【正确答案】A
【答案解析】栈(stack)在计算机科学中是限定仅在表尾进行插入或删除操作的线性表。
2、(单选题)在Java语言中,被称为内存分配的运算符是()
A.new
B.instance of
C.[]
D.()
【正确答案】A
【答案解析】Java语言中,程序为对象动态分配内存。Java中内存分配的运算符是new。
3、(单选题)下列哪些语句关于内存回收的说明是正确的( )
A.程序员必须创建一个线程来释放内存
B.内存回收程序负责释放无用内存
C.内存回收程序允许程序员直接释放内存
D.内存回收程序可以在指定的时间释放内存对象
【正确答案】B
【答案解析】垃圾收集器在一个 Java 程序中的执行是自动的,不能强制执行,即使程序员能明确地判断出有一块内存已经无用了,是应该回收的,程序员也不能强制垃圾收集器回收该内存块。程序员唯一能做的就是通过调用 System.gc()方法来"建议"垃圾收集器去进行垃圾回收处理,但其是否可以执行,什么时候执行却都是不可知的。
继承
1、(单选题)下列代码执行的结果是()。
class Base
void test()
System.out.print("Base.test()");
class Child extends Base
void test()
System.out.print("Child.test()");
static public void main(String[] a)
Child anObj = new Child();
Base baseObj = (Base)anObj;
baseObj.test();
A.Child.test()Base.test()
B.Base.test()Child.test()
C.Base.test()
D.Child.test()
【正确答案】D
【答案解析】测试代码相当于:Base baseObj = new Child();父类的引用指向子类的实例,子类又重写了父类 的 test() 方法,因此调用的是子类的 test() 方法。
2、(单选题)Java语言中,使用关键字那个对当前对象的父类对象进行引用()
A.super
B.this
C.new
D.extends
【正确答案】A
【答案解析】当子类隐藏了父类的变量,并重写了父类方法后,又要使用父类变量或父类被重写的方法时,可通过super来实现对父类变量的访问和对父类方法的调用。super是用来引用当前对象的父类。
3、(单选题)下述代码的执行结果是( )
class Super
public int getLength()
return 4;
public class Sub extends Super
public long getLength()
return 5;
public static void main (String[] args)
Super sooper = new Super ();
Super sub = new Sub();
System.out.println(sooper.getLength() + "," + sub.getLength());
A.4,4
B.4,5
C.5,4
D.代码不能被编译
【正确答案】D
【答案解析】方法重写返回值类型如果是基本类型应与父类的一致
4、(多选题)下面选项中哪两个可以在 A 的子类中使用( )
class A
protected int method1 (int a, int b)
return 0;
A.public int method1(int a, int b) return 0;
B.private int method1(int a, int b) return 0;
C.private int method1(int a, long b) return 0;
D.public short method1(int a, int b) return 0;
【正确答案】A,C
【答案解析】B子类重写父类的方法,访问权限不能降低;C属于重载;D子类重写父类的方法如果返回值类型是基本类型的话,要求相同。
访问控制
1、(单选题)给出如下代码:
class Test
private int m;
public static void fun()
//some code?
如何使成员变量m可以被函数fun()直接访问( )
A.将private int m改为protected int m
B.将private int m改为public int m
C.将private int m改为static int m
D.将private int m改为int m
【正确答案】C
【答案解析】静态方法中可以直接调用使用其外部的静态成员
抽象类
1、(单选题)关于抽象方法说法正确的是( )
A.不可以是静态的
B.可以有方法体
C.可以在普通类中定义
D.只能存在于抽象类中
【正确答案】A
【答案解析】抽象方法不可以是静态的,不可以有方法体,不可以在普通类中定义,可以在接口中和抽象类中定义。
2、(单选题)下列关于修饰符混用的说法,错误的是( )
A.abstract 不能与 final 并列修饰同一个类
B.abstract 类中可以有 private 的成员
C.abstract 方法可以放在 abstract 类或接口中
D.static 方法中能直接使用非 static 的属性
【正确答案】D
【答案解析】静态方法中不能引用其外部的非静态成员
3、(单选题)已知类 Teacher 和 Student 都是类 Person 的子类,则对于下列代码说法正确的是( )
Person t = new Teacher();
if (t instanceof Teacher)
Student s = (Student)t;
A.将构造一个 Student 对象
B.将构造一个 Teacher 对象
C.编译出错,且运行时出错
D.编译正确,且运行时出错
接口
1、(单选题)下列关于 interface 的说法正确的是( )
A.interface 中可以有 private 方法
B.interface 中可以有 final 方法
C.interface 中可以有 function 实现
D.interface 可以继承其他 interface
【正确答案】D
【答案解析】A. 接口中不可以有 private 的方法。B.接口中不可以有 final 的方法 接口中的方法默认是 public abstract 的。C.接口中的方法不可以有实现
2、(单选题)下列概念中不包括任何实现,与存储空间没有任何关系的是()
A.类
B.接口
C.抽象类
D.对象
【正确答案】B
【答案解析】接口是一种只含有抽象方法或常量的一种特殊的抽象类,因为接口不包括任何实现,所以与存储空间没有任何关系。
3、(多选题)不能用来修饰 interface 的有( )
A.private
B.public
C.protected
D.static
【正确答案】A,C,D
【答案解析】修饰接口可以是public和默认
4、(多选题)以下哪个选项可以替换第2行位置的代码,且替换后效果相同()
public interface Foo
int k = 4;
A.final int k = 4;
B.public int k = 4;
C.static int k = 4;
D.abstract int k = 4;
【正确答案】A,B,C
【答案解析】接口中的属性都是常量,默认由public static final同时修饰,可以省略,abstract不能修饰变量
核心API
注释
1、(多选题)下列文档注释规范说明正确的是
A.@author Lee Boynton代表作者
B.@version 1.2.1代表版本号
C.@see import java.util.Arrays;代表参见
D.@since JDK1.8 代表JDK版本
【正确答案】A,B,C,D
【答案解析】此题目考查的是文档注释的规范,以上选项均正确 因此ABCD是正确的选项。
2、(多选题)有关javadoc命令生成文档叙述正确的是
A.如果是一个包命令为javadoc –d docDir nameOfPackage
B.如果是一个包命令为javadoc –d docDir nameOfPackages
C.如果文件在默认包中命令为javadoc –d docDir *.java
D.如果文件在默认包中命令为javadoc –d docDir *.javac
【正确答案】A,C
【答案解析】此题目考查的是javadoc命令生成文档的了解,BD语法错误,AC均正确 因此AC是正确的选项。
字符串操作
1、(单选题)以下代码的输出结果是()
public class Test
public static void main(String[] args)
String str = NULL;
System.out.println(str);
A.NULL
B.代码不能通过编译
C.没有输出结果
D.运行时出错
【正确答案】B
【答案解析】String类型变量取值应为小写null或其他用""双引号括起来的内容
2、(单选题)下面代码的运行结果为:()
public class foo
public static void main (String[] args)
String s;
System.out.println("s=" + s);
A.代码得到编译,并输出“s=”
B.代码得到编译,并输出“s=null”
C.由于String s没有初始化,代码不能编译通过
D.代码得到编译,但捕获到 NullPointException异常
【正确答案】C
【答案解析】Java中所有定义的基本类型或对象都必须初始化才能输出值。
3、(单选题)以下程序运行结果是()
public class foo
static String s;
public static void main (String[]args)
System.out.println ("s=" + s);
A.输出结果为"s="
B.输出结果为"s=null"
C.编译出错,因为 s 没有初始化。
D.编译出错,因为 s 没有被定义。
【正确答案】B
【答案解析】String 为引用数据类型,引用类型数据成员的默认值为 null
Object
1、(多选题)以下关于hashCode说法正确的是( )
A.两个对象如果hashCode值不同,则两个对象可能相同。
B.两个对象如果hashCode值相同,则两个对象必定相同。
C.两个对象如果hashCode值相同,则两个对象可能相同。
D.两个对象如果hashCode值不同,则两个对象必定不同。
【正确答案】C,D
【答案解析】先通过 hashcode 来判断某个对象是否存放某个桶里,但这个桶里可能有很多对象,那么我们就需要再通过 equals 来在这个桶里找到我们要的对象。
包装类
1、(单选题)下面代码的执行结果是( )
import java.util.*;
public class ShortSet
public static void main(String args[])
Set<Short>
s=new HashSet<Short>();
for(Short i=0;i<100;i++)
s.add(i);
s.remove(i-1);
System.out.println(s.size());
A.1
B.100
C.Throws Exception.
D.None of the Above.
【正确答案】B
【答案解析】i是Short类型i-1是int类型,其包装类为 Integer,所以s.remove(i-1);不能移除Set集合中Shor类型对象。
集合框架
1、(单选题)请选出下列正确的答案( )
import java.util.*;
public class WrappedString
private String s;
public WrappedString(String s)
this.s = s;
public static void main(String[] args)
HashSet<Object>
hs = new HashSet<Object>();
WrappedString ws1 = new WrappedString("aardvark");
WrappedString ws2 = new WrappedString("aardvark");
String s1 = new String("aardvark");
String s2 = new String("aardvark");
hs.add(ws1); hs.add(ws2); hs.add(s1); hs.add(s2);
System.out.println(hs.size());
A.1
B.4
C.2
D.3
【正确答案】D
【答案解析】HashSet集合里面存储的元素是无序的且不重复的,本题中的是s1和s2两个对象在底层判断时返回的相关信息被视为相同元素,所以最终结果集合中值有3个元素。
2、(单选题)下面哪个是链式存储并快速顺序(不需要随机访问)访问的集合类型( )
A.java.util.LinkedList
B.java.util.Queue
C.java.util.ArrayList
D.java.util.LinearList
【正确答案】B
【答案解析】请参考集合队列的结构特点及元素的存取
Map
1、(单选题)HashSet子类依靠( )方法区分重复元素。
A.toString(),equals()
B.clone(),equals()
C.hashCode(),equals()
D.getClass(),clone()
【正确答案】C
【答案解析】HashSet内部使用Map保存数据,即将HashSet的数据作为Map的key值保存,这也是HashSet中元素不能重复的原因。而Map中保存key值前,会去判断当前Map中是否含有该key对象,内部是先通过key的hashCode,确定有相同的hashCode之后,再通过equals方法判断是否相同。
File
1、(单选题)在Java中,"目录"被看作是()
A.文件
B.流
C.数据
D.接口
【正确答案】A
【答案解析】目录在Java中作为一种特殊文件,即文件名的列表,通过类File所提供的方法,可得到文件或目录的描述信息(包括名字、路径、长度、可读、可写等),也可以生成新文件、目录、修改文件和目录,查询文件属性,重命名文件或者删除文件。
RandomAccessFile
1、(单选题)RandomAccessFile是java.io包中的一个兼有输入输出功能的类。以下说法正确的是()
A.可以选择文件中的任意位置开始操作
B.必须从文件中的终止位置开始操作
C.必须从文件中的起始位置开始操作
D.必须从文件中的某个固定位置开始操作
【正确答案】A
【答案解析】文件操作中经常需要的是随机访问,Java中的RandomAccessFile类提供了随意访问文件的功能,它继承了Object类,用DataInput和DataOutput接口来实现。接口中定义了从流中读/写基本类型的数据方法,因此也可以随意读/写数据文件的记录。
I/O
1、(单选题)计算机中的流是()
A.流动的字节
B.流动的对象
C.流动的文件
D.流动的数据缓冲区
【正确答案】D
【答案解析】流,最早从C语言中引入的。其可以看成是一个流动的数据缓冲区。数据从数据源方向经过缓冲区流向数据的目的地。在传送的过程中,其传送方式是串行的。在Java中的java.io包中定义了Java中常见流的接口与类。其中包括两个最基本的流的抽象类,它们分别是OutputStream与InputStream。其余的流都分别从这两个基本类中继承而来。
2、(单选题)Java I/O 程序设计中,下列描述正确的是( )
A.OutputStream用于写操作
B.InputStream用于写操作
C.I/O库不支持对文件可读可写API
D.InputStream是一个接口
【正确答案】A
【答案解析】B. InputStream用于读操作; C. I/O支持对文件的读写; D. InputStream是一个抽象类。
3、(单选题)FilterOutputStream是BufferedOutputStream、DataOutputStream及PrintStream的父类,以下哪个类可能是FilterOutputStream构造函数的参数类型( )
A.OutputStream
B.File
C.InputStream
D.BufferedOutputStream
【正确答案】A
【答案解析】请参考api文档手册
4、(单选题)下面哪个流类属于面向字符的输入流( )
A.ByteArrayInputStream
B.FileInputStream
C.ObjectInputStream
D.InputStreamReader
【正确答案】D
【答案解析】A、B、C 3个都是字节流
异常处理
2、(单选题)下面关于java.lang.Exception类的说法正确的是()
A.继承自Throwable
java选择题2
选择题
1.下面哪一项不是 java 类访问控制关键字
A.public
B.this
C.private
D.protected
答案:B
java 类访问控制关键字有:public,private,protected,default,
不管使用何种修饰符,在本类中都可以访问。
使用 public 修饰符,在所有的地方都可以访问,除非 Package 不可见。
使用 private 修饰符,只能在本类中可以访问。
使用 protected 修饰符,能够在本类,相同 package 中,和子类(可以是不同的包)中访问。
不使用修饰符,能够在本类,本包和子类(相同的包)中访问。
2.阅读如下代码.请问,对语句行 test.hello(). 描述正确的有()
package NowCoder;
class Test
public static void hello()
System.out.println("hello");
public class MyApplication
public static void main(String[] args)
// TODO Auto-generated method stub
Test test=null;
test.hello();
题目内容:
A .能编译通过,并正确运行
B .因为使用了未初始化的变量,所以不能编译通过
C .以错误的方式访问了静态方法
D .能编译通过,但因变量为null,不能正常运行
答案:A
3.下面代码的运行结果是()
public static void main(String[] args)
String s;
System.out.println("s="+s);
题目内容:
A .代码编程成功,并输出”s=”
B .代码编译成功,并输出”s=null”
C .由于String s没有初始化,代码不能编译通过。
D .代码编译成功,但捕获到NullPointException异常
答案:C
4.如下代码的输出结果是什么?
public class Test
public int aMethod()
static int i = 0;
i++;
return i;
public static void main(String args[])
Test test = new Test();
test.aMethod();
int j = test.aMethod();
System.out.println(j);
题目内容:
A .0
B .1
C .2
D .编译失败
答案:D
报错原因:static 就只能出现在 类的内部、方法的外部
只能用来修饰类里的属性(静态属性)、方法(静态方法)、内部类(静态内部类)
5.当你编译和运行下面的代码时,会出现下面选项中的哪种情况?
public class Pvf
static boolean Paddy;
public static void main(String args[])
System.out.println(Paddy);
题目内容:
A .编译时错误
B .编译通过并输出结果false
C .编译通过并输出结果true
D .编译通过并输出结果null
答案:B
以上是关于Java选择题的主要内容,如果未能解决你的问题,请参考以下文章