面试题整理

持续更新:

1、java有哪些基本数据类型?String是不是数据类型?它们有何区别?

      java共提供了八种基本数据类型

        其中有六种是数字类型(四个整型,两个浮点)


        字节型        byte            8位

        短整型        short           16位

        整型            int                32位

        长整型        long             64位

        单精度型     float            32位

        双精度型    double         64位


        一种字符类型

        字符型        char            8位

        布尔类型    boolean        8位


String本身是对象,不是数据类型,所以是不同的,String的变量是对String这个类的引用。

2、数据类型之间的转换

        在java里面,我们一般传参数是通过命令行传参数,这是,传进来的参数是String类型,但是有的时候,我们只需要整型或双精度类型,我们这时不能直接使用传进来的参数,需要对其类型转换:

        用Integer.parseInt去把String转换为整型,用Double.parseDouble去把String转换为双精度类型。

3、数组和集合(eg:Map、List)

        数组与集合的区别一:数组声明了它容纳的元素的类型,而集合不声明,这是由于集合以超类Object形式来存储他们的元素。

        数组与集合的区别二:一个数组实例具有固定的大小,不能伸缩,集合则可以根据需要动态来改变大小。

        数组与集合的区别三:数组是一种可读/可写数据结构,是没有办法去创建一个只读的数组,然而可以使用集合提供的ReadOnly方法,只读方式来使用集合,该方法将返回一个集合的只读版本。

5、java多态的实现(继承、重载、覆盖)

    多态可分为:

(1)编译多态:主要是体现在重载,系统在编译就能确定调用重载函数的哪个版本

(2)运行多态:主要体现在OO设计的继承上,子类的对象也是父类的对象,即上溯造型,所以子类对象可以作为父类对象使用,父类的对象变量可以指向子类对象。因此通过一个父类发出的方法调用可能执行的是方法在父类中的实现,也可能是某个子类中的实现,它是由运行时刻具体的对象类型决定的。

注:OO设计原则见:OO设计原则 -- OO设计的原则及设计过程的全面总结 - CSDN博客

你可能感兴趣的:(面试题整理)