Java SE
不去上课
积极向上,善于思考,努力工作!
展开
-
JavaSE基础知识(二十一)--Java集合(容器)之类LinkedList的内部类ListItr的源码分析
//列表迭代器类 private class ListItr implements ListIterator<E> { private Node<E> lastReturned; private Node<E> next; private int nextIndex; private int...原创 2020-01-31 21:56:47 · 215 阅读 · 0 评论 -
JavaSE基础知识(二十一)--Java集合(容器)之类LinkedList的源码分析(已修改)
Java SE 是什么,包括哪些内容(二十一)?本文内容参考自Java8标准顺序访问列表的一个常用实现类:LinkedList类声明: public class LinkedList<E> extends AbstractSequentialList<E> implements List<E>, Deque<E>, Clonea...原创 2019-12-31 22:19:25 · 358 阅读 · 0 评论 -
JavaSE基础知识(二十一)--Java集合之抽象类AbstractSequentialList源码分析
Java SE 是什么,包括哪些内容(二十一)?本文内容参考自Java8标准有序集合类(列表)承上启下的顺序访问抽象类:参看随机访问抽象类:AbstractList[https://blog.csdn.net/ruidianbaihuo/article/details/103449793]AbstractSequentialList其中加粗表示提供了实现,–表示当前接口/类中不存在这个...原创 2019-12-30 22:02:07 · 147 阅读 · 0 评论 -
JavaSE基础知识(二十一)--Java集合(容器)之接口Deque的源码分析
JavaSE基础知识(二十一)–Java集合(容器)之接口List的源码分析原创 2019-12-28 22:17:34 · 515 阅读 · 1 评论 -
JavaSE基础知识(二十一)--Java集合(容器)之接口Queue的源码分析
设计用于在处理之前容纳元素的集合。除了基本操作之外,队列还提供其他插入,提取和检查操作。 这些方法均以两种形式存在:一种在操作失败时引发异常,另一种返回特殊值。 插入操作的后一种形式专门设计用于容量受限的实现; 在大多数实现中,插入操作不会失败。通常,但不一定要对队列中的元素进行排队FIFO(先进先出)方式。 例外情况是优先级队列,根据提供的内容对元素进行排序比较器,或元素的自然顺序,以...原创 2019-12-28 17:22:46 · 257 阅读 · 0 评论 -
JavaSE基础知识(二十一)--Java集合之抽象类AbstractList源码分析
Java SE 是什么,包括哪些内容(二十一)?本文内容参考自Java8标准再次感谢Java编程思想对本文的启发!前面的博文从概念性的角度分析了集合(容器)的功能作用,现在,再从顶层设计到底层设计(具体的实现类)的具体源码实现来继续分析集合(容器)。之前的博文已经详细了解了列表的根接口List,下面来详细了解一下有序集合(容器),也就是列表的一个承上启下的抽象类:AbstractList...原创 2019-12-16 22:57:14 · 226 阅读 · 0 评论 -
JavaSE基础知识(二十一)--Java集合(容器)之抽象类AbstractCollection的源码分析
Java SE 是什么,包括哪些内容(二十一)?本文内容参考自Java8标准再次感谢Java编程思想对本文的启发!前面的博文从概念性的角度分析了集合(容器)的功能作用,现在,再从顶层设计到底层设计(具体的实现类)的具体源码实现来继续分析集合(容器)。之前的博文已经详细了解了集合(容器)的根接口Collection,下面来详细了解一下**集合(容器),**的一个承上启下的抽象类:Abstr...原创 2019-12-10 14:09:16 · 249 阅读 · 0 评论 -
JavaSE基础知识(二十一)--Java集合(容器)之类ArrayList的内部类ListItr源码分析
Java SE 是什么,包括哪些内容(二十一)?本文内容参考自Java8标准再次感谢Java编程思想对本文的启发!在上一篇博文中讨论了集合(容器)类的通用迭代器类型Iterator,这篇博文来讨论以下有关列表的专门迭代器:ListIterator它是专门遍历迭代列表的一个类型标准,下面来看一下ArrayList类有关于它的具体实现ArrayList类是通过内部类来提供的具体实现,至于为...原创 2019-12-08 17:36:27 · 182 阅读 · 0 评论 -
JavaSE基础知识(二十一)--Java集合(容器)之类ArrayList的内部类Itr源码分析
Java SE 是什么,包括哪些内容(二十一)?本文内容参考自Java8标准再次感谢Java编程思想对本文的启发!在讨论接口Collection源码的时候谈到了集合(容器)类都会实现的一个接口:Iterator它是专门遍历迭代集合(容器)的一个类型标准,下面来看一下ArrayList类有关于它的具体实现ArrayList类是通过内部类来提供的具体实现,至于为什么使用内部类,可以参考我有...原创 2019-12-07 22:54:57 · 202 阅读 · 0 评论 -
JavaSE基础知识(二十一)--Java集合(容器)之类ArrayList的源码分析(二)
Java SE 是什么,包括哪些内容(二十一)?本文内容参考自Java8标准再次感谢Java编程思想对本文的启发!①、batchRemove(Collection<?> c, boolean complement) //private方法,支撑类内部的public方法 //返回类型为boolean,带一个Collection<?>类型的形式参数c ...原创 2019-12-07 16:30:29 · 144 阅读 · 0 评论 -
JavaSE基础知识(二十一)--Java集合(容器)之类ArrayList的源码分析
Java SE 是什么,包括哪些内容(二十一)?本文内容参考自Java8标准再次感谢Java编程思想对本文的启发!前面的博文从概念性的角度分析了集合(容器)的功能作用,现在,再从顶层设计到底层设计(具体的实现类)的具体源码实现来继续分析集合(容器)。上一篇博文已经详细了解了列表的根接口List,下面来详细了解一下有序集合(容器),也就是列表的一个常用实现类:ArrayList(它的底层实...原创 2019-11-25 22:56:07 · 404 阅读 · 0 评论 -
JavaSE基础知识(二十一)--Java集合(容器)之接口List的源码分析
Java SE 是什么,包括哪些内容(二十一)?本文内容参考自Java8标准再次感谢Java编程思想对本文的启发!前面的博文从概念性的角度分析了集合(容器)的功能作用,现在,再从顶层设计到底层设计(具体的实现类)的具体源码实现来继续分析集合(容器)。关于集合(容器),上一篇博文已经详细了解了根接口Collection,下面来详细了解一下有序集合(容器),也就是列表的根接口:List(它仅...原创 2019-11-25 13:03:15 · 151 阅读 · 0 评论 -
JavaSE基础知识(二十一)--Java集合(容器)之接口Collection的源码分析
Java SE 是什么,包括哪些内容(二十一)?本文内容参考自Java8标准再次感谢Java编程思想对本文的启发!原创 2019-11-16 15:35:29 · 272 阅读 · 0 评论 -
JavaSE基础知识(二十一)--Java集合(容器)之Collection、Map特性,使用场景总结
Java SE 是什么,包括哪些内容(二十一)?本文内容参考自Java8标准再次感谢Java编程思想对本文的启发!仅从以下一点来总结Collection和Map的特点:1、 查找(获取)元素Collection:你会发现Collection查找或者获取元素的索引都已经被规定了(或者说默认)。比如⑴、List:①、ArrayList:数字(int) ②、LinkedList:数...原创 2019-10-27 16:28:35 · 248 阅读 · 0 评论 -
JavaSE基础知识(二十一)--Java集合(容器)之容器的打印输出
Java SE 是什么,包括哪些内容(二十一)?本文内容参考自Java8标准再次感谢Java编程思想对本文的启发!首先,了解一个方法:类Arrays的方法toString()。你必须使用类Arrays的方法toString()来产生数组的可打印表示容器的打印无需任何的帮助,不需要特别使用哪个方法。代码示例:// 容器的打印 //类PrintingContainers ...原创 2019-10-26 20:53:28 · 332 阅读 · 0 评论 -
JavaSE基础知识(二十一)--Java集合(容器)之向容器中添加一组元素
Java SE 是什么,包括哪些内容(二十一)?本文内容参考自Java8标准再次感谢Java编程思想对本文的启发!如果你使用集合非常频繁,你肯定会用到两个有关集合的工具类:⑴、Arrays:提供了很多有关List的方法。⑵、Collections:提供了很多有关Collection的方法。在以上两个类中都有很多实用的方法,本文即将要谈到的一次性添加一组元素就和它们有关。前面博文中涉及...原创 2019-10-26 20:29:10 · 356 阅读 · 0 评论 -
JavaSE基础知识(二十一)--Java集合(容器)之基本概念
Java SE 是什么,包括哪些内容(二十一)?本文内容参考自Java8标准再次感谢Java编程思想对本文的启发!在后续的博文中,将会重点介绍每种容器类的源码实现以及实现原理。PS:时间有限,有关Java SE的内容会持续更新!今天就先写这么多,如果有疑问或者有兴趣,可以加QQ:2649160693,并注明CSDN,我会就博文中有疑义的问题做出解答。同时希望博文中不正确的地方各位加以指正。...原创 2019-10-23 21:35:05 · 168 阅读 · 0 评论 -
JavaSE基础知识(二十一)--Java集合(容器)之泛型概述
Java SE 是什么,包括哪些内容(二十)?本文内容参考自Java8标准再次感谢Java编程思想对本文的启发!在Java SE5之前,使用容器的一个主要的问题是:编译器允许你向容器中插入不同的类型。例如,一个Apple对象的容器,我们使用最基本可靠的容器类ArrayList来说明,实际上,你可以把ArrayList当作"可以自动扩充自身尺寸的数组"来看待。ArrayList的使用相当简单...原创 2019-10-23 20:29:53 · 179 阅读 · 0 评论 -
JavaSE基础知识(二十一)--Java集合(容器)之概述
Java SE 是什么,包括哪些内容(二十)?本文内容参考自Java8标准再次感谢Java编程思想对本文的启发!首先,来看3个问题:1、如果一个程序只包含固定数量的且其生命周期都是已知的对象,那么这是一个非常简单的程序。2、Java中的集合(容器)是专门用来存放对象(实际上是对象的引用)的,同时它本身也是一种对象。3、 一般情况下,我们都是依靠命名的引用来持有对象:MyType ...原创 2019-10-22 20:18:37 · 212 阅读 · 0 评论 -
JavaSE基础知识(二十)--Java内部类之局部内部类
Java SE 是什么,包括哪些内容(二十)?本文内容参考自Java8标准再次感谢Java编程思想对本文的启发!在之前的博文中提到过,在必要的情况下,可以在代码块里创建内部类,但最典型的方式是在一个方法体里面创建,这个叫做局部内部类。局部内部类不能有访问说明符,因为它不是外部类的一部分,但是它有以下两点优点:①、它可以访问当前代码块(也就是方法体{ })里面的常量②、外部类的所有成员。...原创 2019-10-17 14:04:49 · 130 阅读 · 0 评论 -
JavaSE基础知识(十八)--Java多态之向上转型(多态的"缺陷")
Java SE 是什么,包括哪些内容(十八)?本文内容参考自Java8标准再次感谢Java编程思想对本文的启发!无法"覆盖"私有方法如果我们试图像下面这样做也是无可厚非的:// 试图"覆盖"私有方法 //类PrivateOverride public class PrivateOverride{ //私有方法f() private void f(){...原创 2019-08-18 12:46:07 · 120 阅读 · 0 评论 -
JavaSE基础知识(十九)--Java接口之接口中的域(类变量)
Java SE 是什么,包括哪些内容(十九)?本文内容参考自Java8标准再次感谢Java编程思想对本文的启发!接口中的任何域(类变量)都自动是static和final的,所以接口就成为了一种很便捷的用来创建常量的工具。在Java SE5之前,这是产生与C或C++中的enum(枚举类型)具有相同效果的类型的唯一途径,因此在Java SE5之前的代码中,你会看到下面这样的代码:// 用接口...原创 2019-09-02 21:49:43 · 471 阅读 · 0 评论 -
JavaSE基础知识(十九)--Java接口之接口的嵌套
Java SE 是什么,包括哪些内容(十九)?本文内容参考自Java8标准再次感谢Java编程思想对本文的启发!一个接口可以嵌套在另一个接口中,这揭示了许多非常有趣的特性。代码示例:// 接口嵌套 //包访问权限类A class A{ //嵌套的包访问权限接口B interface B{ //方法f() void f...原创 2019-09-03 00:30:16 · 225 阅读 · 0 评论 -
JavaSE基础知识(十九)--Java接口之工厂设计模式
Java SE 是什么,包括哪些内容(十九)?本文内容参考自Java8标准再次感谢Java编程思想对本文的启发!生成遵循某个接口的对象的典型方式就是工厂方法设计模式,这与直接调用实现接口的类的构造方法不同,工厂方法设计模式是直接在工厂对象上调用创建方法,这个创建方法将生成接口的某个实现类对象(看到这里,你会发现,重点在这个创建方法。所以需要提醒一下:Java中的方法是后期绑定的,也就是多态)...原创 2019-09-03 14:31:18 · 186 阅读 · 0 评论 -
JavaSE基础知识(二十)--Java内部类之初识内部类
Java SE 是什么,包括哪些内容(二十)?本文内容参考自Java8标准再次感谢Java编程思想对本文的启发!可以将一个类的定义放在另一个类的内部,这就是内部类。内部类是一种非常有用的特性,因为它允许你把一些逻辑相关的类组织在一起,并控制位于内部的类的可视性。但是,你必须要知道的是:内部类与组合是完全不同的概念。在最初,内部类看起来就像是一种"代码隐藏机制:将类置于其它类的内部"。但...原创 2019-09-06 23:27:01 · 143 阅读 · 0 评论 -
JavaSE基础知识(十九)--Java接口之适配接口
Java SE 是什么,包括哪些内容(十九)?本文内容参考自Java8标准再次感谢Java编程思想对本文的启发!接口最吸引人的原因之一就是允许同一个接口具有多个不同的实现(就是每个实现接口的类都可以给这个接口的所有方法以不同的实现,而不用去修改主体框架的代码),在简单的情况中,它的体现形式通常是只规定一个接受接口类型的方法(public void f(xxx接口类型 s)),而该接口的实现和...原创 2019-08-29 13:45:44 · 1051 阅读 · 0 评论 -
JavaSE基础知识(十九)--Java接口之通过继承来扩展接口
Java SE 是什么,包括哪些内容(十九)?本文内容参考自Java8标准再次感谢Java编程思想对本文的启发!接口与接口之间也是可以相互继承的,就是一个接口可以extends另一个接口。通过继承,可以很容易地在接口中添加新的方法声明,还可以通过继承在新接口中组合数个接口,这两种情况都可以获得新的接口:代码示例:// 接口间的继承 //接口Monster interface...原创 2019-08-29 11:54:05 · 220 阅读 · 0 评论 -
JavaSE基础知识(十九)--Java接口之多重继承
Java SE 是什么,包括哪些内容(十九)?本文内容参考自Java8标准再次感谢Java编程思想对本文的启发!原创 2019-08-29 10:30:29 · 206 阅读 · 0 评论 -
JavaSE基础知识(十九)--Java接口(抽象类初步)
Java SE 是什么,包括哪些内容(十九)?本文内容参考自Java8标准再次感谢Java编程思想对本文的启发!接口为我们提供了一种将接口与实现分离的更加结构化的方法接口这种机制在编程语言中并不通用。例如,C++对这些概念只有间接的支持。但在Java中却有专门的关键字:interface,这表明了人们认为它是很重要的,以至于提供了对它的直接支持。但是在了解接口之前,我们必须还要知道什么是...原创 2019-08-22 21:51:47 · 683 阅读 · 0 评论 -
JavaSE基础知识(十八)--Java多态之继承与清理
Java SE 是什么,包括哪些内容(十八)?本文内容参考自Java8标准再次感谢Java编程思想对本文的启发!这篇博文主要的中心思想就是:如果在继承关系中,有必要进行清理(就是你觉得垃圾回收器都满足不了需求),那么一定记得在清理的过程中明确调用父类的清理方法去清理父类的对象,不要仅仅调用子类的清理方法,因为子类的清理方法只能清理子类的对象。通过组合和继承方法来创建新类时,永远不必担心对象...原创 2019-08-18 15:32:01 · 164 阅读 · 0 评论 -
JavaSE基础知识(十八)--Java多态之构造方法和多态
Java SE 是什么,包括哪些内容(十八)?本文内容参考自Java8标准再次感谢Java编程思想对本文的启发!通常,构造方法不同于其他的普通方法,涉及到多态时仍是如此。尽管构造方法并不具有多态性(在前面的博文中提到过,构造方法实际上是静态方法,只不过static的声明是隐式的)。但还是非常有必要理解构造方法怎样通过多态在复杂的层次结构中运作,这将有助于我们避免一些令人不快的困扰。1、构...原创 2019-08-18 14:12:59 · 418 阅读 · 0 评论 -
JavaSE基础知识(二十)--Java内部类之关键字.this与.new
Java SE 是什么,包括哪些内容(二十)?本文内容参考自Java8标准再次感谢Java编程思想对本文的启发!1、.this如果你需要生成对外部类对象的引用,可以使用外部类的名字后面紧跟原点(".")和关键字this。这样产生的引用自动地具有正确的类型,这一点在编译期就被知晓并接受到检查,因此没有任何运行时开销。下面的代码示例展示了如何使用.this:// .this的使用 /...原创 2019-09-09 15:17:49 · 161 阅读 · 0 评论 -
JavaSE基础知识(二十)--Java内部类之向上转型(隐藏具体的实现)
Java SE 是什么,包括哪些内容(二十)?本文内容参考自Java8标准再次感谢Java编程思想对本文的启发!在这篇博文的开头,需要说明的情况有以下两点:1、之前说的类的向上转型(不是内部类的向上转型)主要的应用是为了实现多态,即把子类的对象实例赋值给父类的引用,而内部类的向上转型主要应用不再是这个,而是隐藏具体的实现(内部类其中一个非常重要的应用就是:可以将内部类向上转型为其父类,尤其...原创 2019-09-14 23:38:05 · 234 阅读 · 0 评论 -
JavaSE基础知识(二十)--Java内部类之在方法和作用域内的内部类(局部内部类)
Java SE 是什么,包括哪些内容(二十)?本文内容参考自Java8标准再次感谢Java编程思想对本文的启发!通常,如果所读,写的代码包含了内部类,那么它们都是平凡的内部类,简单并且容易理解。然而,内部类的语法覆盖了大量的其它的更难以理解的技术。例如:可以在一个方法里面或者再任意的作用域内定义内部类。这么做的理由如下:①、利用内部类实现了一个接口,于是可以创建并返回对这个内部类对象的...原创 2019-09-16 13:57:04 · 240 阅读 · 0 评论 -
JavaSE基础知识(七)--Java程序流程控制之循环
Java SE 是什么,包括哪些内容(七)?本文内容参考自Java8标准本文将包括所有Java中有关程序流程控制的内容,包括流程控制语句以及关键字,如果有读者发现遗漏或者是错误,请及时给我留言,我将及时改正,谢谢!程序流程控制可以简单用一句话来开始:如果是这种情况,就走A流程,如果是那种情况就是走B流程…所以,一个完整的程序中会有很多流程,因为,一个完整的程序需要包括很多种情况,并且程序后期...原创 2019-05-05 22:12:17 · 134 阅读 · 0 评论 -
JavaSE基础知识(二十)--Java内部类之内部类的覆盖
Java SE 是什么,包括哪些内容(二十)?本文内容参考自Java8标准再次感谢Java编程思想对本文的启发!如果创建了一个内部类,然后继承其外部类并重新定义此内部类,会发生什么呢?也就是说,内部类可以被覆盖吗?这看起来是一个很有用的思想,但是"覆盖"内部类就好像它是外部类的一个方法,其实没有什么实际的意义。代码示例:// 覆盖内部类 class Egg{ priva...原创 2019-10-09 16:24:05 · 349 阅读 · 0 评论 -
JavaSE基础知识(二十)--Java内部类之内部类的继承
Java SE 是什么,包括哪些内容(二十)?本文内容参考自Java8标准再次感谢Java编程思想对本文的启发!在前面的博文中谈到,如果不是static修饰的内部类,那么必须先创建外部类的对象,才能创建内部类的对象,所以我们知道,内部类的构造器必须连接到指向其外部类对象的引用,所以,如果你需要继承内部类,事情会变得有点复杂。主要的问题在于,那个指向外部类的对象的引用必须被初始化,否则你无法...原创 2019-10-04 20:10:12 · 229 阅读 · 0 评论 -
JavaSE基础知识(二十)--Java内部类之闭包与回调(利用内部类去实现一个接口)
Java SE 是什么,包括哪些内容(二十)?本文内容参考自Java8标准再次感谢Java编程思想对本文的启发!闭包是一个可调用的对象,它记录了一些信息,这些信息来自于创建它的作用域(内部类就是一个闭包,创建它的作用域就是外部类的作用域)。通过之前有关内部类博文的描述,结合上面闭包的定义,我们可以知道:**内部类就是面向对象的闭包。**因为它不仅包含外部类对象的信息,还自动拥有一个指向此外...原创 2019-09-22 15:29:07 · 132 阅读 · 0 评论 -
JavaSE基础知识(二十)--Java内部类之为什么需要内部类
Java SE 是什么,包括哪些内容(二十)?本文内容参考自Java8标准再次感谢Java编程思想对本文的启发!使用内部类才能实现真正意义的多重继承。在前面的有关内部类系列的博文中,已经详细描述了许多有关内部类的语法和定义,但是这些都不能回答"为什么需要内部类"这个问题。那么,Sun公司为什么会如此费心地增加这项基本的语言特性呢?一般说来,内部类有以下两种使用途径:①、内部类可以去继承...原创 2019-09-21 18:14:24 · 167 阅读 · 0 评论 -
JavaSE基础知识(二十)--Java内部类之多层嵌套类访问外部类成员
Java SE 是什么,包括哪些内容(二十)?本文内容参考自Java8标准再次感谢Java编程思想对本文的启发!一个内部类被嵌套多少层并不重要,无论多少层,它都能透明地访问所有它所嵌入的外部类的所有成员。代码示例:// 内部类访问外部类所有成员 //外部类MNA class MNA{ //外部类方法f() private void f(){} ...原创 2019-09-21 16:29:00 · 471 阅读 · 0 评论