Java核心知识点精讲.pdf

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

Java核⼼知识点精讲

⼀、Java基础

1.集合

集合主要包括List、Set、Map

1.1List

有序,有3个实现类,分别是ArrayList、Vector、LinkedList。

ArrayList,基于数组实现,线程不安全,查找快,增加、删除操作慢

Vector,基于数组实现,线程安全,查找快,增加、删除操作慢,并发效率低

LinkedList,基于双向链表实现,线程不安全,增加、删除操作快,查找慢。

1.2Set

不可重复、⽆序。

对象包括地址内内容。对象的相等性本质上是对象的hashCode值相同,Java依据对象的内存地址计算出对象的HashCode值,如果要⽐较两个对象是否相等,

则必须同时覆盖对象的HashCode⽅法和equals⽅法,相等表明两个⽅法返回的值都相等。

1.3Map

HashMap,⽆序,根据键的HashCode值存取。快速更新,jdk1.8基于数组+链表+红⿊树实现,线程不安全

ConcurrentHashMap,分段锁实现,线程安全,由多个Segment组成,Segment个数相当于并发数,某⼀个Segment继承⾃

ReentrantLock并单独加锁。每个Segment安全则全局安全。ConcurrentHashMap的每个Segment内部的数据结构都和

HashMap相同。

HashTable,线程安全,继承Dictionary类,同⼀个时刻只有⼀个线程写HashTable,并发性不如ConcurrentHashMap。

2.异常

2.1异常分类

Throwable是所有错误或异常的⽗类,Throwable⼜分为Error、Exception。

Error,Java程序运⾏错误,启动时出现错误,说明启动失败。运⾏时出现错误,则系统退出进程。

Exception,Java程序运⾏时异常。是异常处理的核⼼。可分为运⾏时异常和检查异常。

RuntimeException:指在Java虚拟机正常运⾏期间抛出的异常,RuntimeException可以被捕获并处理,如果出现

RuntimeException,那么⼀定是程序发⽣错误导致的。我们通常需要抛出该异常或者捕获并处理该异常。常见的RuntimeException

有NullPointerException、ClassCastException、ArrayIndexOutOfBundsException等。

CheckedException:指在编译阶段Java编译器会检查CheckedException异常并强制程序捕获和处理此类异常,即要求程序在可能

出现异常的地⽅通过trycatch语句块捕获并处理异常。常见的CheckedException有由于I/O错误导致的IOException、

SQLException、ClassNotFoundException等。该类异常⼀般由于打开错误的⽂件、SQL语法错误、类不存在等引起。

2.2异常处理

异常处理有两种,⼀是抛出异常,另外⼀种是使⽤trycatch语句处理。

抛出异常,将异常抛给调⽤者,由调⽤者根据情况处理。3种⽅式抛出:throws、throw、系统⾃动抛出

1.throws⽤在⽅法上,⽤于定义⽅法可能抛出的异常。

2.throw作⽤在⽅法内,表⽰明确抛出⼀个异常。

throws和throw的不同点:

位置不同,throws作⽤在⽅法上,后⾯跟着异常的类。throw作⽤在⽅法内,后⾯跟着异常的对象。

功能不同,throw后续的代码不再执⾏,讲跳转到调⽤者。(finally语句块除外)。

trycatch捕获并抛出异常。利⽤try把可能产⽣的异常代码包起来.

3.反射

3.1概念

在程序运⾏过程中,能动态的获取该类和对象的信息,即对任意⼀个类都能获取所有属性和⽅法,对任意⼀个对象都能调⽤其任意⼀个⽅

法。

3.2反射应⽤

对象类型分为两种:编译时类型和运⾏时类型。

编译时类型,在声明对象时采⽤的类型。

运⾏时类型,为对象赋值时采⽤的类型。

对象的编译时类型为,运⾏时类型为。

//personPersonStudent

真实类型信息(对象的属性和⽅法)通常通过反射来实现,这便是中的反射机制核⼼功能。

//

您可能关注的文档

文档评论(0)

各类考试卷精编 + 关注
官方认证
内容提供者

各类考试卷、真题卷

认证主体社旗县兴中文具店(个体工商户)
IP属地河南
统一社会信用代码/组织机构代码
92411327MAD627N96D

1亿VIP精品文档

相关文档