应届生JAVA面试笔试选择题(答案+解析)

本文详细解读Java中变量命名规范,包括变量、类名、常量和方法名的最佳实践,并介绍了JDK工具的用途,如编译器、解释器,以及JDBC中的连接与调用操作。此外,讨论了异常处理、内存管理、字符串操作、异常体系结构、Java访问修饰符、字符集编码选择和Java应用开发的关键知识点。

Java基础 

 

  1. Java语言中下面那个可以用作正确的变量名称?

    A.name    B.3D    C.implements   D.extends 

  2. 下列标识符(名字)命名原则中,正确的是( )  
      A. 类名的首字母小写

    B. 变量和方法名的首写字母大写
    C. 接口名的首写字母小写

    D. 常量完全大写

  3. Java程序的执行过程中用到一套JDK工具,其中java.exe是指( )   
    A.Java文档生成器 B.Java解释器
    C.Java编译器 D.Java类分解器

    解析:

    Java编译器:将Java源文件(.java文件)编译成字节码文件(.class文件,是特殊的二进制文件,二进制字节码文件)。javac.exe可以简单看成是Java编译器。

    Java解释器:是JVM的一部分。Java解释器用来解释执行Java编译器编译后的程序。java.exe可以简单看成是Java解释器。

           

  4. JDBC中,用于表示数据库连接的对象是

    A.Statement B.Connection C. DriverManager D.PreparedStatement

  5. JDBC中,用于调用存储过程的对象是:   
    A.ResultSet
    B.DriverManager
    C.CallableStatemet
    D.PreparedStatement

  6. 下列说法正确的是?

    A.一个文件里可以存在两个public修饰的类

    B,final修饰的类可以被继承

    C,子类不可以访问父类非public和protected修饰的属性(子类可以访问父类public和protected修饰的属性)

    D,构造函数可以被重写(override)

    解析:protected的意思是本包可以访问,子类可以继承。

     

  7. 下列哪一项的叙述是正确的?

    A,声明抽象方法,大括号可有可无

    B,abstract修饰符可以修饰字段、方法、和类

    C,声明抽象方法不可写出大括号

    D,抽象方法的body部分必须用一对大括号{ }包住

    解析:abstract是抽象的意思,在java中,规定只能修饰类或者方法,所以不能修饰属性。 

    // 这就是一个抽象类,abstract类不一定有abstract方法,但abstract方法所在类一定是abstract类
    //因为可能含未为实现的抽象方法,所以抽象类不能被实例化
    abstract class Animal {
        String name;
        int age;
    
        // 动物会叫
        public abstract void cry(); //把相同但不确定的方法提取出来,子类继承后由子类具体实现
    }
    
    // 
    // 当继承的父类是抽象类时,需要将抽象类中的所有抽象方法全部实现。
    class cat extends Animal {
        // 实现父类的cry抽象方法
        public void cry() {
            System.out.println("猫叫:");
    
        }
    }

     

     

  8. 下面的程序输出结果为?

    public static void main(String[] args) {
            int x=-3;
            int y=-10;
            System.out.println(y%x);
        }

    A,-1                B,2             C,1                D,3

     

    计算方法:先忽略除数和被除数的符号,按正数取模,结果与被除数同号

     

  9. (  )类是所有异常类的父类

    A,Throwable    B,Error    C,Exception    D,AWTError

    解析:Thorwable类(表示可抛出)是所有异常和错误的父类

    Error是程序无法处理的错误,它是由JVM产生和抛出的,比如OutOfMemoryError、ThreadDeath等。这些异常发生时,Java虚拟机(JVM)一般会选择线程终止。
    Exception是程序本身可以处理的异常,这种异常分两大类运行时异常和非运行时异常(编译时异常)。程序中应当尽可能去处理这些异常。 

    Java异常体系架构图 

     

  10. 已知如下类说明,如下那个使用是正确的?

    public class Test{
           private float f=1.0f;
           int m=12;
           static int n=1;
           public static void main(String[] args) {
                  Test t=new Test();
                  //some code...
        }
    }

    A,t.f        B,this.n        C,Test.n         D,Test.m

     

     

    Java访问修饰符包括private(仅在本类中被访问),default(默认值,在同一个包中可被访问),protected(在同一个包或子类中可被访问)和public(无限制)

     

  11. Java应用开发中字符集编码通常情况下优先采用以下那种?

    A,UTF-8     B, iso8859-1      C,GB2312    D,ASCII

     

  12. Java访问限定的修饰符不包括?

    A,public       B,private    C,default      D,final 

     

  13. 下列会触发JVM垃圾回收的是()?

    A,当新对象生成,并且在Eden申请空间失败时

    B,Old区被写满

    C,在循环中创建大量对象

    D,使用Class.forName加载外部类

    解析:一般情况下,当新对象生成,并且在Eden申请空间失败时,就会触发Scavenge GC,对Eden区域进行GC,清除非存活对象,并且把尚且存活的对象移动到Survivor区。然后整理Survivor的两个区。这种方式的GC是对年轻代的Eden区进行,不会影响到年老代。因为大部分对象都是从Eden区开始的,同时Eden区不会分配的很大,所以Eden区的GC会频繁进行。因而,一般在这里需要使用速度快、效率高的算法,使Eden去能尽快空闲出来。

     

  14. 以下程序的运行结果?

    class Person{
        public Person(){
            System.out.println("this is a Person");
        }
    }
    public class Teacher extends Person{
        private String name="tom";
        public Teacher(){
            System.out.println("this is a Teacher");
            super;
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

「已注销」

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

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

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

打赏作者

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

抵扣说明:

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

余额充值