java开发基础知识点

java开发基础知识点,第1张

java开发基础知识点

java接口与抽象类对比:
    接口支持多继承,抽象类单继承;
    接口只能定义常量及抽象方法,抽象类可以定义变量,常量,非抽象方法;

异常体系:
    Throwable 子类分为 Error 和 Exception , Exception 分为 RuntimeException 和 非RuntimeException;
    Error: 严重问题,不需要处理;
    Exception: 称为异常类,它表示程序本身可以处理的问题;
        1、RuntimeException:在编译期是不检查的,出现问题后,需要我们回来修改代码;
        2、非RuntimeException:编译期就必须处理的,否则程序不能通过编译,就更不能正常运行了 ;
集合

        集合分为单列集合和双列结合,单列结合为Collection,双列集合为Map;
        单列结合Collection下分为可重复元素的List,和不可重复元素Set;
        List和Set都为接口,具体实现类有:List下有ArrayList、linkedList等;
        Set实现类有:HashSet、TreeSet等;
        双列集合Map实现类有:HashMap等;

Set集合:不包含重复元素的集合,没有带索引的方法,所以不能使用普通for循环遍历,对集合的迭代顺序不作任何保证;
    hashCode时根据对象或其他信息计算得出的int型数值,可重写hashCode方法;

------------------------------------------------------------
    集合遍历时使用iterator遍历时添加元素会报集合并发修改异常;
    使用普通的for循环遍历时添加元素则不会报并发修改异常;
    jdk1.5版本之后使用for循环增强语句遍历时添加元素,也会报集合并发修改异常,其底层使用的是iterator迭代器原理;
------------------------------------------------------------
栈:数据是先进后出的结构模型;
队列:数据是先进先出的结构模型;
数组:一列数据中每个元素对应的索引位置,如果查询则效率比较高,若做删除和添加效率比较低,因为每删除或者添加一个元素都要移动其后面的所有元素的位置;
链表:每个存储数据都有一个结点和指向下个地址信息,若要做添加和删除元素时,只需把上一个地址信息指向对应的地址信息就可以,
    而查询则每次查询都要从头开始查询,所以链表型数据结构相对于增删 *** 作效率比较高;
数组与链表对比,数组读多写少时效率比链表的有效率,而读少写多时链表比数组的效率高;

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5678113.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存