题目选自牛客网
1.以下对继承的描述错误的是()
A.Java中的继承允许一个子类继承多个父类
B.父类更具有通用性,子类更具体
C.Java中的继承存在着传递性
D.当实例化子类时会调用父类中的构造方法
正确答案:A
Java 中的继承是单继承,意味着一个子类只能继承自一个父类。不允许一个子类同时继承多个父类。这与某些其他编程语言(如 C++)中的多重继承不同。
单选题
2.下面哪个修饰符修饰的变量是所有同一个类生成的对象共享的( )
A.public
B.private
C.static
D.final
正确答案:C
在 Java 中,修饰符 static 用于指定一个变量或方法属于类本身,而不是属于任何特定的实例。这意味着所有同一个类生成的对象都会共享同一个静态变量的实例。静态变量通常被称为类变量或静态字段。
单选题
3.下面叙述那个是正确的?()
A.java中的集合类(如Vector)可以用来存储任何类型的对象,且大小可以自动调整。但需要事先知道所存储对象的类型,才能正常使用。
B.在java中,我们可以用违例(Exception)来抛出一些并非错误的消息,但这样比直接从函数返回一个结果要更大的系统开销。
C.java接口包含函数声明和变量声明。
D.java中,子类不可以访问父类的私有成员和受保护的成员。
正确答案:B
A 项错误。Java 中的集合类(如 Vector)确实可以用来存储任何类型的对象,并且它们的大小可以自动调整。但是,并不需要事先知道所存储对象的具体类型。Java 集合类是泛型的,可以使用通配符(wildcard)或者具体的类型参数来指定集合中可以存储的对象类型。例如,
Vector<String>
可以存储字符串对象,而Vector<?>
可以存储任何类型的对象。B 项正确。在 Java 中,异常(Exception)确实可以用来抛出非错误的消息,比如用来处理程序流程控制或者通知调用者某些特殊情况的发生。然而,使用异常机制确实会带来一定的性能开销,因为它涉及到堆栈的展开和异常处理逻辑的执行。因此,如果只是为了简单地返回一个结果,通常推荐使用方法返回值而不是抛出异常。
C 项错误。Java 接口只包含抽象方法声明和常量变量声明,它不包含方法体(即方法的具体实现)。接口中的方法默认都是 public abstract 的,而变量默认都是 public static final 的。
D 项错误。在 Java 中,子类可以访问父类的公有成员(public)和受保护的成员(protected),但不能访问父类的私有成员(private)。私有成员只能被定义它们的类内部访问。
单选题
4.ServletConfig接口默认是哪里实现的?
A.Servlet
B.GenericServlet
C.HttpServlet
D.用户自定义servlet
正确答案:B