摘要:
ArrayList定义及功能 ArrayList的定义: public class ArrayList<E> extends AbstractList<E> implements List<E>, RandomAccess, Cloneable, java.io.Serializable{} Arr
阅读全文
posted @ 2022-01-24 21:18
残城碎梦
阅读(104)
推荐(0)
摘要:
Collection接口 public interface Collection<E> extends Iterable<E> {} 它继承了Iterable接口,那么这个接口有什么用呢? Iterable接口表示可迭代接口,它会返回一个迭代器Iterator。通过这个迭代器,我们可以遍历集合中元素
阅读全文
posted @ 2022-01-24 21:16
残城碎梦
阅读(102)
推荐(0)
摘要:
接口List public interface List<E> extends Collection<E> {} List接口继承Collection接口,它提供一种索引概念,就像数组下标一样,让我们可以快速找到对应索引位置的元素,也可以在索引位置添加,删除,替换对应元素。 对比Collection
阅读全文
posted @ 2022-01-24 08:32
残城碎梦
阅读(104)
推荐(0)
摘要:
数组与集合的区别 数组不是面向对象的,存在明显的缺陷,集合弥补了数组的缺点,比数组更灵活更实用,而且不同的集合框架类可适用不同场合。如下: 数组能存放基本数据类型和对象,而集合类存放的都是对象,集合类不能存放基本数据类型。数组和集合存放的对象皆为对象的引用地址。 数组固定无法动态改变,集合类容量动态
阅读全文
posted @ 2022-01-23 22:02
残城碎梦
阅读(90)
推荐(1)
摘要:
数组 数组的基本概念 数组可以看成是多个相同类型数据组合,对这些数据的统一管理。 数组变量属引用类型,数组也可以看成是对象,数组中的每个元素相当于该对象的成员变量。 数组的元素可以是任何数据类型,包括基本类型和引用类型。 C和C++中的数组都可以分配在栈上面,而JAVA中的数组是只能分配在堆上面的,
阅读全文
posted @ 2022-01-23 21:37
残城碎梦
阅读(405)
推荐(0)
摘要:
Java IO知识回顾: Java NIO简介 Java NIO(Java New IO)是1个全新的、 JDK 1.4后提供的 IO API。它提供了与标准IO不同的IO工作方式,可替代 标准Java IO 的IO API。 NIO的工作方式 Channels and Buffers(通道和缓冲区
阅读全文
posted @ 2022-01-23 20:05
残城碎梦
阅读(371)
推荐(0)
摘要:
Java提供一种机制叫做序列化,通过有序的格式或者字节序列持久化java对象,其中包含对象的数据,还有对象的类型,和保存在对象中的数据类型。所以,如果我们已经序列化了一个对象,那么它可以被读取并通过对象的类型和其他信息进行反序列化,并最终获取对象的原型。 序列化就是把Java对象中的value/st
阅读全文
posted @ 2022-01-23 17:07
残城碎梦
阅读(72)
推荐(0)
摘要:
XML是一种通用的数据交换格式,它的平台无关性、语言无关性、系统无关性、给数据集成与交互带来了极大的方便。XML在不同的语言环境中解析方式都是一样的,只不过实现的语法不同而已。 XML的解析方式分为四种: DOM解析 SAX解析 JDOM解析 DOM4J解析 其中前两种属于基础方法,是官方提供的平台
阅读全文
posted @ 2022-01-23 14:17
残城碎梦
阅读(99)
推荐(0)
摘要:
SPI的全称是 Service Provider Interface,它是一种服务发现机制,是JDK中内置的玩意,它通过在 classPath 路径下的 META-INF/services 文件夹查找服务实现,自动加载文件里所定义的接口实现类。 首先,我们定义了一个接口 HelloService.j
阅读全文
posted @ 2022-01-23 14:13
残城碎梦
阅读(128)
推荐(0)
摘要:
所谓内部类就是在一个类内部进行其他类结构的嵌套操作。 它体现了一种代码的隐藏机制和访问控制机制。内部类与所在外部类有一定的关系,往往只有该外部类调用此内部类,所以没有必要专门用一个Java文件存放这个类。 内部类种类 内部类分为四种:静态内部类、成员内部类、局部内部类、匿名内部类。 静态内部类 pu
阅读全文
posted @ 2022-01-23 12:53
残城碎梦
阅读(290)
推荐(0)
摘要:
关于Java中的动态代理,我们首先需要了解的是一种常用的设计模式--代理模式,而对于代理,根据创建代理类的时间点,又可以分为静态代理和动态代理。 代理模式 代理模式是常用的java设计模式,它的特征是代理类与委托类有同样的接口,代理类主要负责为委托类预处理消息、过滤消息、把消息转发给委托类,以及事后
阅读全文
posted @ 2022-01-23 10:43
残城碎梦
阅读(78)
推荐(0)
摘要:
Comparator比较器 Comparator 是比较器接口。 我们若需要控制某个类的次序,而该类本身不支持排序(即没有实现Comparable接口);那么,我们可以建立一个“该类的比较器”来进行排序。这个“比较器”只需要实现Comparator接口即可。 也就是说,我们可以通过“实现Compar
阅读全文
posted @ 2022-01-23 10:08
残城碎梦
阅读(235)
推荐(0)
摘要:
java.lang.ref整体包结构: 引用与对象 每种编程语言都有自己操作内存中元素的方式,例如在 C 和 C++ 里是通过指针,而在 Java 中则是通过“引用”。 在 Java 中一切都被视为了对象,但是我们操作的标识符实际上是对象的一个引用(reference)。 //创建一个引用,引用可以
阅读全文
posted @ 2022-01-23 09:23
残城碎梦
阅读(7277)
推荐(4)
摘要:
JDK中内置了很多常用的工具类,且多以“s”结尾,如:集合工具类Collections,数组工具类Arrays,对象工具类Objects,文件工具类Files,路径工具类Paths,数学工具类Maths;但也有一些不是以“s”结尾的工具类,如TimeUnit和System。 Objects Obje
阅读全文
posted @ 2022-01-23 08:47
残城碎梦
阅读(361)
推荐(0)
摘要:
在平常的编码之中,有一个错误总会在你的意料之外出现,那就是空指针异常。空指针的出现也很简单,你得到了一个null对象,调用了一些方法,出现空指针异常。空指针会出现在各种地方,常见的比如Map.get()没有获取到对象就调用对象例的方法,类对象没有获取到就调用类中的方法。 空指针的处理方式也很多,最简
阅读全文
posted @ 2022-01-23 08:25
残城碎梦
阅读(1421)
推荐(0)
摘要:
程序运行时,发生的不被期望的事件,它阻止了程序按照程序员的预期正常执行,这就是异常。 Java提供了优秀的解决办法:异常处理机制。 异常处理机制能让程序在异常发生时,按照代码的预先设定的异常处理逻辑,针对性地处理异常,让程序尽最大可能恢复正常并继续执行,且保持代码的清晰。 Java中的异常可以是函数
阅读全文
posted @ 2022-01-23 08:10
残城碎梦
阅读(111)
推荐(0)
摘要:
在Java运行时环境中,对于任意一个类,能否知道这个类有哪些属性和方法?对于任意一个对象,能否调用它的任意一个方法? 答案是肯定的。这种动态获取类的信息以及动态调用对象的方法的功能来自于Java语言的反射(Reflection)机制。 Java反射机制主要提供了以下功能: 在运行时判断任意一个对象所
阅读全文
posted @ 2022-01-23 07:39
残城碎梦
阅读(80)
推荐(0)
摘要:
对于面向对象编程来说,抽象是它的一大特征之一。在Java中,可以通过两种形式来体现OOP的抽象:接口和抽象类。这两者有太多相似的地方,又有太多不同的地方。很多人在初学的时候会以为它们可以随意互换使用,但是实际则不然。今天我们就一起来学习一下Java中的接口和抽象类。 抽象类 在了解抽象类之前,先来了
阅读全文
posted @ 2022-01-23 07:25
残城碎梦
阅读(224)
推荐(0)