牛客刷题错题(二)——Java基础

1. 以下哪些方法是Object类中的方法

A. clone()    B.toString()  C. wait()  D.finalize()

正确答案: A B C D   你的答案: A B D (错误)

分析: 

2. JAVA反射机制主要提供了以下哪些功能?

A. 在运行时判断一个对象所属的类

B. 在运行时构造一个类的对象

C. 在运行时判断一个类所具有的成员变量和方法

D. 在运行时调用一个对象的方法

正确答案: A B C D   你的答案: A B C D (正确)

分析:

JAVA反射机制概念:

JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。

Java反射机制主要提供了以下功能: 

    在运行时判断任意一个对象所属的类;

    在运行时构造任意一个类的对象;

    在运行时判断任意一个类所具有的成员变量和方法;

    在运行时调用任意一个对象的方法;

    生成动态代理。

 

3. 局部变量能否和成员变量重名?

A. 可以,局部变量可以与成员变量重名,这时可用“this”来指向成员变量

B. 可以,这时可用“local”关键字来指向局部变量

C. 不能,局部变量不能与成员变量重名

D. 不能,在一个类中不能有重名变量,不管是成员变量还是函数中的局部变量

正确答案: A   你的答案: A (正确)

分析:java采用局部优先的思想。局部变量可以和成员变量相同,使用标识符调用时,优先使用局部变量。在实例方法中出现变量名相同时,可以使用this关键字来调用。

 

4. 建立Statement对象的作用是?

A. 连接数据库     B. 声明数据库     C. 执行SQL语句     D. 保存查询结果

正确答案: C   你的答案: C (正确)

分析:

Class.forName("com.mysql.jdbc.Driver");  //加载jdbc驱动

con=DriverManager.getConnection(url,user,password); //建立连接

stmt=con.createStatement(); //创建语句执行者(stateMent用于执行不带参数的简单sql语句,PreparedStatement用于执行带参数的预编译sql语句能够预防sql注入,CallableStatement提供了一种标准形式的调用存储过程的方法)

stmt.execute(“sql语句”); 

rs=stmt.executeQuery("sql查询语句"); //结果集

 

5. 如下代码的结果是什么 ? 

class Base {
    Base() {
    System.out.print("Base"); 
    }
}
public class Alpha extends Base {
    public static void main( String[] args ) {
        new Alpha();
        //调用父类无参的构造方法
        new Base();
    } 
}

A. Base      B. BaseBase     C. 编译失败     D. 代码运行但没有输出       E. 运行时抛出异常

正确答案: B   你的答案: B (正确)

 分析:子类构造器的默认第一行就是super(),默认调用直接父类的无参构造。这也就是一旦一个子类的直接父类没有无参的构造的情况下,必须在自己构造器的第一行显式的指明调用父类或者自己的哪一个构造器。

 

6. 下面程序运行完之后,t2与t3的关系为()

        Object obj=new Object();
        List aList=new ArrayList();
        List bList=new LinkedList();
        
        long t1=System.currentTimeMillis();
        for(int i=0;i<50000;i++){
            aList.add(0,obj);
        }
        long t2=System.currentTimeMillis()-t1;
        
        t1=System.currentTimeMillis();
        for(int i=0;i<50000;i++){
            bList.add(0,obj);
        }
        long t3=System.currentTimeMillis()-t1; 

A. t2     B. t2=t3     C. 不确定      D. t2>t3

正确答案: D   你的答案: B (错误)

分析:

List aList=newArrayList();

List bList=newLinkedList();

aList.add(0,obj); //0代表下标,obj代表对象。每个对象都插入到下标0的位置。

bList.add(0,obj);

此题考察的是

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值