zoukankan      html  css  js  c++  java
  • 2.Java面试题(二)

    1.什么是通配符
    答:泛型通配符是在泛型的使用中,用来表示对泛型类型进行类型范围限定的特殊符号。
    这里用通配符就是为了表明要输入的类型要在一定范围之内,
    说的通俗一些其实就是一个类型取值范围,而最大值是Object这是确定的。

    2.数组是不是可以使用泛型
    答:数组必须明确知道内部元素的类型(因为数组在内存中是一段连续的空间,必须明确类型分配空间),而且编译器会”记住“这个类型,每次往数组里插入新元素都会进行类型检查,不匹配会抛出java.lang.ArrayStoreException错误。
    原因就是Java的泛型是通过类型擦除(type erasure)来实现的。
    3.什么是泛型擦除
    答:什么是类型擦除呢,简单来说Java在编译期间,所有的泛型信息都会被擦除掉。

    4.型里面extends,super是什么意思
    答:泛型通配符的分类
    (1)<?>:无限通配符,可以在?中放入里放入任何引用数据类型,用来接收任意引用数据类型。


    (2)<? extends E>:这个表明的是通配符的上界,通俗讲就如同取值范围中的负无穷到E,即小于等

    于E的所有类型, 因为E是最大的类型(最大可以达到Object),表明可以输入所有的E的子类和E,等下

    会进行细致的讲解。



    (3)<? super E>:这个表明的是通配符的下界,通俗讲其取值范围就是E到最大值Object(因为Object

    是所有类的基类),就是大于等于E,小于等于Object类。

     

    5.如何泛型编写一个泛型方法,接受泛型参数,返回泛型类型。

    答:编写泛型方法并不困难,你需要用泛型类型来替代原始类型,比如使用T, E or K,V等被广泛认

    可的类型占位符。最简单的情况下,一个泛型方法可能会像这样:

    public V put(K key, V value) {

    return cache.put(key, value);

    }

    6.泛型和原始类型是否可以一起使用
    答:不可以,必须使用原始类型的包装类。
    7.常见的编译时异常和运行时异常
    答:常见的编译时异常:
    (1)FileNotFoundException:文件不可见异常
    (2)ClassNotFoundException:类找不到异常
    (3)SQLException:SQL异常
    (4)NoSuchFieldException
    (5)NoSuchMethodException
    (6)ParseException
    常见的运行时异常:

    (1)NullPointerException:空指针异常
    (2)ArithmeticException:算数异常
    (3)ClassCastException:类型转换异常
    (4)ArrayIndexOutOfBoundsException:数组下标越界异常
    (5)StringIndexOutOfBoundsException:字符串下标越界异常
    8.正则表达式是用来字符串匹配的,用match()方法。

    9.接口和抽象类的区别
    答:(1)抽象类可以有构造方法,接口中不能有构造方法。

    (2)抽象类中可以有普通成员变量,接口中没有普通成员变量

    (3)抽象类中可以包含非抽象的普通方法,接口中的所有方法必须都是抽象的,不能有非抽象的普通方法。

    (4)抽象类中的抽象方法的访问类型可以是public,protected和(默认类型,虽然eclipse下不报错,

    但应该也不行),但接口中的抽象方法只能是public类型的,并且默认即为public abstract类型。


    (5)抽象类中可以包含静态方法,接口中不能包含静态方法

    (6)抽象类和接口中都可以包含静态成员变量,抽象类中的静态成员变量的访问类型可以任意,但接口

    中定义的变量只能是publicstatic final类型,并且默认即为publicstatic final类型。


    (7)一个类可以实现多个接口,但只能继承一个抽象类。
    10.什么是内部类,有什么用

    答:在很多情况下,类被定义成一个独立的程序单元,但是有时候也会把一个类放在另一个类的内部定

    义,这个定义在其他类内部的类就称为内部类。

       作用:java通过内部类加上接口,可以很好的实现多继承的效果。
  • 相关阅读:
    TrieTree的学习
    单调队列(monotonic queue)列与单调栈的学习
    507. Perfect Number
    157. Read N Characters Given Read4
    nsexec
    nsenter
    setjmp
    runc 测试
    cgo setns + libcontainer nsexec
    前端 导出为Excel 数据源为table表格 并且table中含有图片
  • 原文地址:https://www.cnblogs.com/liqinzhen/p/12800929.html
Copyright © 2011-2022 走看看