• Java每日笔试题错题分析(5)



    一、错题知识点前瞻

    第1题

    数组的初始化

    数组的初始化有两种,分为静态初始化和动态初始化
    静态初始化:int array[]=new int[]{element1,element2…}
    或int array[]={element1,element2}
    动态初始化:int array[]={element1,element2…}



    第2题

    对象构造初始化过程

    1.初始化父类中的静态成员变量和静态代码块
    2.初始化子类中的静态成员变量和静态代码块
    3.初始化父类的普通成员变量和代码块,再执行父类的构造方法
    4.初始化子类的普通成员变量和代码块,再执行子类的构造方法



    第3题

    线程安全类

    1、Hashtable
    2、Vetor



    第4题

    << 与 <<< 符号

    <<代表右移一位,<<< 代表无符号右移



    第5题

    编译与运行出错的区分

    对于多态中的非静态属性或非静态方法,编译看左,运行看右。也就是在编译期间看左边的类中有无该方法/属性,而实际在运行时执行的是右边类的方法/属性。



    第6题

    内部类

    1、静态内部类才可以声明静态方法
    2、静态方法中不可以使用非静态变量
    3、抽象方法中不可以有函数体(包括大括号)



    第7题

    Java默认整数型数据为int型,小数型数据为Double型



    二、错题展示及其解析


    第1题


    在这里插入图片描述


    原理

    数组的初始化

    数组的初始化有两种,分为静态初始化和动态初始化
    静态初始化:int array[]=new int[]{element1,element2…}
    或int array[]={element1,element2}
    动态初始化:int array[]={element1,element2…}


    解析:C中静态初始化和动态初始化不可同时进行



    第2题


    在这里插入图片描述


    原理:

    对象构造初始化过程

    1.初始化父类中的静态成员变量和静态代码块
    2.初始化子类中的静态成员变量和静态代码块
    3.初始化父类的普通成员变量和代码块,再执行父类的构造方法
    4.初始化子类的普通成员变量和代码块,再执行子类的构造方法


    解析:先执行父类成员变量输出Y,再调用父类构造函数输出X,再调用子类成员变量输出Y,最后调用子类构造函数输出Z,即答案为YXYZ



    第3题


    在这里插入图片描述


    原理:

    线程安全类

    1、Hashtable
    2、Vetor



    第4题


    在这里插入图片描述


    原理:

    << 于 <<< 符号

    <<代表右移一位,<<< 代表无符号右移




    第5题


    在这里插入图片描述


    原理:

    编译与运行出错的区分

    对于多态中的非静态属性或非静态方法,编译看左,运行看右。也就是在编译期间看左边的类中有无该方法/属性,而实际在运行时执行的是右边类的方法/属性。


    解析:
    题中父类可以调用子类重写的方法,但不能调用子类新增的方法,因此语句b.bark()出错,由于b中无bark方法,因此会报编译错误



    第6题


    在这里插入图片描述


    原理:

    内部类

    1、静态内部类才可以声明静态方法
    2、静态方法中不可以使用非静态变量
    3、抽象方法中不可以有函数体(包括大括号)


    解析:
    静态内部类才可以声明静态方法,AD错,抽象方法中不可以有函数体(包括大括号),B错,静态方法中不可以使用非静态变量,C错



    第7题


    在这里插入图片描述


    原理:

    Java默认整数型数据为int型,小数型数据为Double型



  • 相关阅读:
    【JAVA后端开发】Part2--瑞吉外卖项目(员工管理)
    【状态估计】将变压器和LSTM与卡尔曼滤波器结合到EM算法中进行状态估计(Python代码实现)
    嵌入式开发中,嵌入式硬件和软件有什么区别?
    雷达电子战的基本内容 (02)
    HRNet 【demo 复现过程】
    计算机专业课笔记集中整理贴(持续更新中。。。)
    随机数生成过慢导致系统阻塞怎么办?
    设计模式:观察者模式(C#、JAVA、JavaScript、C++、Python、Go、PHP)
    Netty源码阅读(1)之——客户端源码梗概
    十五、【VUE-CLI】插槽 slot
  • 原文地址:https://blog.csdn.net/haobabiu/article/details/133845279