java专题(一)

1丶下列关于计算机系统和Java编程语言的说法,正确的是()

A. 计算机是由硬件、操作系统和软件组成,操作系统是缺一不可的组成部分

B. Java语言编写的程序源代码可以不需要编译直接在硬件上运行。

C. 在程序中书写注释不会影响程序的执行,可以在必要的地方多写一些注释。

D. Java的集成开发环境(IDE),如Eclipse,是开发Java语言必需的软件工具。

解析:A.计算机是由硬件和软件组成;B.java是先编译为class文件即字节码文件,然后再交由JVM执行;D.使用IDE只是为了开发方便

2丶JAVA属于(   )。

A. 操作系统

B. 办公软件

C. 数据库系统

D. 计算机语言

3丶A 派生出子类 B , B 派生出子类 C ,并且在 java 源代码有如下声明:

1. A a0=new A();

2. A a1=new B();

3. A a2=new C();

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

A. 只有第一行能通过编译

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

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

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

     解析:父类的引用可以指向子类的实例化对象,这种方式叫做向上转型

4丶以下 _____ 不是 Object 类的方法

A. clone()

     B. finalize()

     C. toString()

D. hasNext()

解析:下图为所有Object类中方法


hasNext()属于迭代器里的方法

5丶System.out.println(10%3*2);打印为

A. 1

B. 2

C. 4

D. 6

6丶选项中哪一行代码可以添加 到题目中而不产生编译错误?

public abstract class MyClass {
     public int constInt = 5;
     //add code here
     public void method() {
     }

}

A. public abstract void method(int a);

B. constInt = constInt + 5;

C. public int method();

D. public abstract void anotherMethod() {}

解析:抽象方法只有声明部分,没有方法体;不同方法定义必须包含声明部分和方法体;B项语句在类中不允许这样表达,可以在方法中表达

7丶下面程序的运行结果是
String str1 = "hello";
String str2 = "he" + new String("llo");

System.err.println(str1 == str2);

A. true

B. false

C. exception

D. 无输出

解析:对于字符串而言,==比较的是对象的内存地址(hashcode),equals比较的是内容。字符串,比如“abc”,是放在常量池里,相同的字符串不会另辟空间存储,在编译期已确定;而new String()这种方式在堆里开辟的空间,在JVM运行时才可以确定。

8丶如果希望监听TCP端口9000,应该怎样创建socket?

A. new Socket("localhost",9000);

B. new ServerSocket(9000);

C. new Socket(9000);

D. new ServerSocket("localhost",9000);

解析:ServerSocket(int port) 是服务端绑定port端口,调accept()监听等待客户端连接,它返回一个连接队列中的一个socket。

Socket(InetAddress address , int port)是创建客户端连接主机的socket流,其中InetAddress是用来记录主机的类,port指定端口。

9丶Choose the correct  ones from the following statements:

A. A class can implement more than one interfaces

B. A class can extend more than one class

C. An interface has at least one method declared.

D. An abstract class which has no abstract methods declared is legal

解析:一个类可以实现多个接口;一个接口可以继承多个接口;一个类只能继承一个类;一个接口里可以没有抽象方法和static final属性;有抽象方法的类一定是抽象类或者(所有方法都是抽象的情况下)接口
10丶下列方法中哪个是线程执行的方法? ()
A. run()
B. start()
C. sleep()
D. suspend()
解析:run()方法用来执行线程体中具体的内容;start()方法用来启动线程对象,使其进入就绪状态;sleep()方法用来使线程进入睡眠状态;
suspend()方法用来使线程挂起,要通过resume()方法使其重新启动
注:以上题均来自于牛客网中的java专项练习:  https://www.nowcoder.com/6418438


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值