loading...
摘要:集合与容器类 体系 早在 Java 2 中之前,Java 就提供了特设类。比如:Dictionary, Vector, Stack 和 Properties 这些类用来存储和操作对象组。虽然这些类都非常有用,但是它们缺少一个核心的,统一的主题。由于这个原因,使用 Vector 类的方式和使用 Pro 阅读全文
posted @ 2020-02-20 15:01 pgjett 阅读 (68) 评论 (0)
摘要:类加载与实例化 基本步骤 类装载分为以下 5 个步骤: 加载:根据查找路径找到相应的 class 文件然后导入 检查:检查加载的 class 文件的正确性 准备:给类中的静态变量分配内存空间 解析:虚拟机将常量池中的符号引用替换成直接引用的过程。符号引用理解为一个标示,而直接引用直接指向内存中的地址 阅读全文
posted @ 2020-02-19 23:24 pgjett 阅读 (46) 评论 (0)
摘要:类与对象 数据类型 变量就是申请内存来存储值。也就是说,当创建变量的时候,需要在内存中申请空间 内存管理系统根据变量的类型为变量分配存储空间,分配的空间只能用来储存该类型数据 基本数据类型 1. java 中有 8 种基本数据类型,其中 4 个整型、2 个浮点型、字符型、布尔型 2. 每种基本数据类 阅读全文
posted @ 2020-02-18 20:35 pgjett 阅读 (18) 评论 (0)
摘要:值传递与对象拷贝 值传递和引用传递 调用一个有参函数的时候,会把实际参数传递给形式参数。但是,在程序语言中,这个传递过程中传递的两种情况,即值传递和引用传递 两者区别 1. 值传递(pass by value)是指在调用函数时将实际参数复制一份传递到函数中,这样在函数中如果对参数进行修改,将不会影响 阅读全文
posted @ 2020-02-17 20:09 pgjett 阅读 (142) 评论 (2)
摘要:面向对象 封装 1. 一种将抽象性函式接口的实现细节部份包装、隐藏起来的方法 2. 封装的优点 良好的封装能够减少耦合 类内部的结构可以自由修改 可以对成员变量进行更精确的控制 隐藏信息,实现细节 3. 实现方式:属性私有+ 继承 1. 子类继承父类的特征和行为,继承是面向对象的基石 2. java 阅读全文
posted @ 2020-02-16 15:15 pgjett 阅读 (25) 评论 (0)
摘要:二叉树 基本概念 常见术语 1. 结点: 包含一个数据元素及若干指向子树的分支 2. 结点的度:含有孩子结点的个数 3. 结点的层次:由根结点开始,根结点层次为 0 4. 树的深度:由根结点开始,根结点深度为 0 5. 树的高度:由叶子结点向根结点,取最大值,叶子结点高度为 0 6. 叶子结点(终端 阅读全文
posted @ 2020-02-15 19:38 pgjett 阅读 (69) 评论 (2)
摘要:链表 数组与链表 1. 同为线性表存储结构 2. 数组在一段连续的空间上,链表将分散的内存块连接起来使用 单链表 SinglyLinkedList 结构 1. 结点:存储链表的每一个内存块 2. 后继指针:每个结点除了存储数据外,还要记录下一个内存块的地址 3. 头结点:第一个结点,记录基址 4. 阅读全文
posted @ 2020-02-14 15:33 pgjett 阅读 (38) 评论 (0)
摘要:数组 随机访问 1. 数组是一种线性表数据结构,用一组连续的内存空间,来存储同一类型的数据 线性表:数据排成线一样的结构,最多只有前和后两个方向 数据、栈、队列、链表都是线性表结构 堆、图、二叉树等数据之间不具有简单前后关系的结构,所以是非线性表结构 2. 随机访问 在连续的地址空间存相同类型的数据 阅读全文
posted @ 2020-02-13 14:37 pgjett 阅读 (25) 评论 (0)
摘要:复杂度 复杂度分析 1. 数据结构和算法的目标:快、省,即执行效率和资源消耗 2. “事后统计法”具有很大局限性,提前预估效率很重要 3. 复杂度分析是学习算法的精髓和分析算法的利器 时间复杂度 1. 假设每行代码执行时间意义,所有代码的执行时间 和每行代码的执行次数 成正比。 2. 大O时间复杂度 阅读全文
posted @ 2020-02-12 14:25 pgjett 阅读 (19) 评论 (0)
摘要:友情链接 阅读全文
posted @ 2020-02-11 14:06 pgjett 阅读 (13) 评论 (0)