牛客网 Java专项练习(3)

牛客网 Java专项练习(3)

1 下列关于Java类中方法的定义,正确的是()

a 若代码执行到return语句,则将当前值返回,而且继续执行return语句后面的语句。
b 只需要对使用基本数据类型定义的属性使用getter和setter,体现类的封装性。
c 方法的返回值只能是基本数据类型。
d 在同一个类中定义的方法,允许方法名称相同而形参列表不同。

答案 d

A 一旦执行到return,就不再执行后续的代码

C、Java的返回值类型有:void(没有返回值)、基本数据类型(byte、short、int、long、float、double、char、boolean)、引用数据类型(类、接口、数组)

D、重载 方法名一致 形参列表不同(形参的个数或者参数对应的类型不一致)

2

public static void main(String[] args) {
Thread t = new Thread() {
 
public void run() {
my360DW();
}
};
 
t.run();
System.out.print("DW");
 
}
 
static void my360DW() {
 
System.out.print("360");
 
}
a  DW

b  360

c 360DW

d 都不输出

答案 c

输出“360DW”,本题意在考察开启线程的方法t.start()和直接调用t.run()的区别。但在题目中没有提现 注:直接调用线程的run()方法不是开启线程,就是普通调用,会直接执行run()方法中的内容

3 尝试编译以下程序会产生怎么样的结果?()

public class MyClass {
    long var;
    public void MyClass(long param) { var = param; }//(1)
    public static void main(String[] args) {
        MyClass a, b;
        a =new MyClass();//(2)
        b =new MyClass(5);//(3)
    }
}

a 编译错误将发生在(1),因为构造函数不能指定返回值
b 编译错误将发生在(2),因为该类没有默认构造函数
c 编译错误将在(3)处发生,因为该类没有构造函数,该构造函数接受一个int类型的参数
d 该程序将正确编译和执行

答案 c

构造方法就是:public类名, 没有方法修饰符

所以 (1) 处就是一个普通方法

所以该类没有带参数构造方法 ,编译报错

a 构造函数没有返回值

b 如果一个类没有显示的构造函数 java虚拟机就为其加一个无参的构造函数

c 该类没有带参的构造函数

在这里插入图片描述

这篇感觉比较水 溜了溜了

发布了39 篇原创文章 · 获赞 19 · 访问量 1482

猜你喜欢

转载自blog.csdn.net/weixin_44222272/article/details/105102485