Java基础题2:类和对象
1.下面代码的运行结果是()
public static void main(String[] args){
String s;
System.out.println("s="+s);
}
A.代码编程成功,并输出”s=”
B.代码编译成功,并输出”s=null”
C.由于String s没有初始化,代码不能编译通过。
D.代码编译成功,但捕获到NullPointException异常
【答案】
C
【解析】
局部变量在使用的时候,一定要进行初始化。
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
【解析】
Test test=null;
test.hello();
因为test=null不指向任何对象 并调用hello(),如果hello不是静态方法的话,就会报空指针异常。
因为hello()是静态的方法,所以通过test可以调用hello,因为test的本质还是Test类型。
3.如下代码的输出结果是什么?
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
【解析】
Java中不允许定义局部的静态变量!
在方法中定义的变量是局部变量,为静态方法属于类变量。随着类的加载而被创建,而局部变量是调用该方法的时候,才创建的。
4. 以下代码在编译和运行过程中会出现什么情况
public class TestDemo {
private int count;
public static void main(String args[]){
TestDemo test = new TestDemo(88);
System.out.println(test.count);
}
TestDemo(int a){
count=a;
}
}
A.编译运行通过,输出结果是88
B.编译时错误,count变量定义的是私有变量
C.编译时错误,System.out.println方法被调用时test没有初始化
D.编译和执行时没有输出结果
【答案】
A
【解析】
TestDemo test = new TestDemo(88);
这里它会创造TestDemo对象并且调用一个整型的构造方法,就是下面的 TestDemo(int a){}
.
所以把88给了私有的count,因为是在当前类中调用,所以会正常输出。
5.关于包的说法,错误的是()
A.包是一组类的集合
B.包能防止类的名字冲突
C.import语句能够导入 一个指定的包
D.import static能够导入一些静态方法
【答案】
C
【解析】
import导入的是包中的类,不能导入包。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!