牛客 错误题 加解释(各种小知识点)

6 篇文章 0 订阅
1 篇文章 0 订阅

博主存放错题的地方

若所用变量都已正确定义,以下选项中,非法的表达式是()

正确答案: C 你的答案: B (错误)
a!= 4||b==1
’a’ % 3
’a’ = 1/3
’A’ + 32

列Java代码中的变量a、b、c分别在内存的____存储区存放。

class A {
    private String a = “aa”;
    public boolean methodB() {
        String b = “bb”;
        final String c = “cc”;
    }
}

正确答案: C 你的答案: 空 (错误)
堆区、堆区、堆区
堆区、栈区、堆区
堆区、栈区、栈区
堆区、堆区、栈区
静态区、栈区、堆区
静态区、栈区、栈区

解释a是类中的成员变量,存放在堆区
b、c都是方法中的局部变量,存放在栈区

关于Java以下描述正确的有( )
正确答案: C D 你的答案: D (错误)
Class类是Object类的超类
Object类是一个final类
String类是一个final类
Class类可以装载其它类
以下关于final关键字说法错误的是()
正确答案: A C 你的答案: A (错误)
final是java中的修饰符,可以修饰类、接口、抽象类、方法和属性
final修饰的类不能被继承
final修饰的方法不能被重载
final修饰的变量不允许被再次赋值
解释
1.final修饰变量,则等同于常量
2.final修饰方法中的参数,称为最终参数。
3.final修饰类,则类不能被继承
4.final修饰方法,则方法不能被重写。

final 不能修饰抽象类

final修饰的方法可以被重载 但不能被重写

下面关于变量及其范围的陈述哪些是不正确的()
正确答案: B C 你的答案: B D (错误)
实例变量是类的成员变量
实例变量用关键字static声明
在方法中定义的局部变量在该方法被执行时创建
局部变量在使用前必须被初始化
解释
C:在方法中定义的局部变量在该方法被执行时创建
是错误的
不是局部变量在该方法被执行/调用时创建,而是应该为在该变量被声明并赋值时创建,可以理解为“当代码执行到该变量被赋值的代码时才被创建”

以下哪几个是java中的集合类型?
正确答案: A B D 你的答案: B (错误)
Vector
Set
String
List

解释Java中的集合类型:Vector、Set、List

判断对错。在java的多态调用中,new的是哪一个类就是调用的哪个类的方法。
正确答案: B 你的答案: A (错误)

解释
B

java多态有两种情况:重载和覆写
在覆写中,运用的是动态单分配,是根据new的类型确定对象,从而确定调用的方法;
在重载中,运用的是静态多分派,即根据静态类型确定对象,因此不是根据new的类型确定调用的方法

判断
一个类可以有多个基类和多个基接口

基类就是父类
下面有关java实例变量,局部变量,类变量和final变量的说法,错误的是?
正确答案: B 你的答案: C (错误)
实例变量指的是类中定义的变量,即成员变量,如果没有初始化,会有默认值。
局部变量指的是在方法中定义的变量,如果没有初始化,会有默认值
类变量指的是用static修饰的属性
final变量指的是用final 修饰的变量

解释
B.
定义在类中的变量是类的成员变量,可以不进行初始化,Java会自动进行初始化,如果是引用类型默认初始化为null,如果是基本类型例如int则会默认初始化为0
局部变量是定义在方法中的变量,必须要进行初始化,否则不同通过编译
被static关键字修饰的变量是静态的,静态变量随着类的加载而加载,所以也被称为类变量
被final修饰发变量是常量

下列选项中符合Java命名规则的标识符是()

2japro
&Class
const
_123
解释
A 中不能以数字开头;
B 中不能以& 开头(不是$);
C 中是保留的关键字;
下面的程序将来打印什么?()

public class TestIncr {
public static void main(String args[]) {
int i = 0;
i = i++ + i;
System.out.println(“I =” +i);
}
}

正确答案: A 你的答案: B (错误)(emmm 错的好丢脸)
I = 1
I = 2
I = 3
编译出错

解释首先,在 i = i++ + i 中,先执行的是 i++ ,此时式子可为 i = 0 + i
然后再进行后一步 +i ,因为前面执行了 i++ ,所以这个 i 的值已经 +1 了

以下叙述正确的是

正确答案: D 你的答案: B (错误)
实例方法可直接调用超类的实例方法
实例方法可直接调用超类的类方法、
实例方法可直接调用子类的实例方法
实例方法可直接调用本类的实例方法

解释 超类就是父类
这里 是不能调用私有方法

在Java中,关于HashMap类的描述,以下正确的是 ()
正确答案: A C D 你的答案: A D (错误)
HashMap使用键/值得形式保存数据
HashMap 能够保证其中元素的顺序
HashMap允许将null用作键
HashMap允许将null用作值
往OuterClass类的代码段中插入内部类声明, 哪一个是错误的:

public class OuterClass{
    private float f=1.0f;
    //插入代码到这里
}

正确答案: A B C D 你的答案: A C D (错误)
class InnerClass{
public static float func(){return f;}
}

abstract class InnerClass{
public abstract float func(){}
}

static class InnerClass{
protected static float func(){return f;}
}

public class InnerClass{
static float func(){return f;}
}
解释
静态方法不能访问非静态变量,A和C错;
抽象类中的抽象方法不能有方法提,B错;
一个类中有多个类声明时,只能有一个public类,D错

list是一个ArrayList的对象,哪个选项的代码填到//todo delete处,可以在Iterator遍历的过程中正确并安全的删除一个list中保存的对象?()

Iterator it = list.iterator();
int index = 0;
while (it.hasNext())
{
Object obj = it.next();
if (needDelete(obj)) //needDelete返回boolean,决定是否要删除
{
//todo delete
}
index ++;
}

正确答案: A 你的答案: B (错误)
it.remove();
list.remove(obj);
list.remove(index);
list.remove(obj,index);

true、false、null、sizeof、goto、synchronized 哪些是Java关键字?
正确答案: E F 你的答案: A B C F (错误)
true
false
null
sizeof
goto
synchronized
解释
true,false是boolean类型的变量,null是Java中的空,不是关键字
sizeof不是Java中的关键字
goto是Java中保留关键字,现在不使用
synchronized是Java中的关键字,用在同步方法或者同步代码块中

以下程序输出()

public static void main(String[] args) {
int num = 2;
switch (num) {
case 1:
++num;
case 2:
++num;
case 3:
++num;
default:
++num;
break;
}
System.out.println(num);
}
}

正确答案: D 你的答案: C (错误)
2
3
4
5
解释
case或者default后边没有berak的时候就会造成 “穿透”
果default语句在所有case最后,此时可以不加break 如果default语句之后还有case语句,如果不加break,则default语句执行过之后会继续下面的case语句,此时必须要在default之后加break语句,不过这种default用法是不推荐的,default顾名思义是缺省情况,只有任何条件都不匹配的情况下才会执行,所以应该将default语句放在所有case结束之后。但是也可以放前面

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zzsaixuexi

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值