《Java 应用与开发》课程讲义 - 王晓东. . . 53 5.3.1 static 属性和方法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 5.3.2 初始化块 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 5.3.3 静态导入 . . . . . . . . . 115 vi 10.3.1 ArrayList 类 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 10.3.2 代码的局部性能优化 ensureCapacity . . . . . . . . . . . . . . . . . . 116 10.3.3 Vector 类 . . . . . . . . . . 23.4 JSP 脚本 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287 23.4.1 代码脚本 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287 23.4.2 表达式脚本 . . . . . .0 码力 | 330 页 | 6.54 MB | 1 年前3
Java 应用与开发 - 异常处理一个库的作者可以检测出发生了运行时错误,但一般不知道 怎样去处理它们(因为和用户具体的应用有关); ▶ 另一方面,库的用户知道怎样处理这些错误,但却无法检查 它们何时发生(如果能检测,就可以再用户的代码里处理 了,不用留给库去发现)。 提供异常处理机制的的基本思想 让一个函数在发现了自己无法处理的错误时抛出(throw)一个 异常,然后它的(直接或者间接)调用者能够处理这个问题。 O 《C++ 一个库的作者可以检测出发生了运行时错误,但一般不知道 怎样去处理它们(因为和用户具体的应用有关); ▶ 另一方面,库的用户知道怎样处理这些错误,但却无法检查 它们何时发生(如果能检测,就可以再用户的代码里处理 了,不用留给库去发现)。 提供异常处理机制的的基本思想 让一个函数在发现了自己无法处理的错误时抛出(throw)一个 异常,然后它的(直接或者间接)调用者能够处理这个问题。 O 《C++ 一个库的作者可以检测出发生了运行时错误,但一般不知道 怎样去处理它们(因为和用户具体的应用有关); ▶ 另一方面,库的用户知道怎样处理这些错误,但却无法检查 它们何时发生(如果能检测,就可以再用户的代码里处理 了,不用留给库去发现)。 提供异常处理机制的的基本思想 让一个函数在发现了自己无法处理的错误时抛出(throw)一个 异常,然后它的(直接或者间接)调用者能够处理这个问题。 O 《C++0 码力 | 33 页 | 626.40 KB | 1 年前3
Java 应用与开发 - 面向对象编程进阶大纲 多态性 方法重载 关键字 static 关键字 final 学习目标 1. 理解多态和虚方法调用的概念,掌握其用法 2. 掌握方法重载的方法 3. 掌握 static 属性、方法和初始化块的用法 4. 了解设计模式,掌握单例设计模式 5. 掌握 final 关键字的概念和使用方法 大纲 多态性 方法重载 关键字 static 关键字 final 大纲 多态性 方法重载 关键字 show() 方法既可以处理 Person 类型的数据,又可以处理 Student 类型的数据,乃至未来定义的任何 Person 子类类型的 数据,即不必为相关的每种类型单独声明一个处理方法,提高了 代码的通用性。 大纲 多态性 方法重载 关键字 static 关键字 final 多态用法示例 CODE ± PolymorphismSample.java 2 public class PolymorphismSample show() 方法既可以处理 Person 类型的数据,又可以处理 Student 类型的数据,乃至未来定义的任何 Person 子类类型的 数据,即不必为相关的每种类型单独声明一个处理方法,提高了 代码的通用性。 大纲 多态性 方法重载 关键字 static 关键字 final 虚方法调用 思考 一个引用类型的变量如果声明为父类的类型,但实际引用的是子 类对象,则该变量就不能再访问子类中添加的属性和方法。0 码力 | 49 页 | 659.74 KB | 1 年前3
Apache Shiro参考手册中文版的版本控制库:https://svn.apache.org/repos/asf/shiro/trunk/samples/quickstart 在 Apache Shiro 的源代码的 samples/quickstart 目录。该源代码在 Download 页面提供下载。 Setup 在这个简单的示例中,我们将创建一个非常简单的命令行应用程序,它将会运行并迅速退出,这样你能够获得对 Shiro lhazlewood:~/projects/shiro-tutorial\$ 我们已经验证了该程序运行成功——现在让我们启用 Apache Shiro。当我们继续本教程的时候,你可以在每次我们 添加一些代码后运行 mvn compile exec:java 来观察我们变化后的结果。 Enable Shiro 在应用程序中启用 Shiro 最先要明白的事情是几乎在 Shiro 中的每个东西都与一个名为 Configuration 虽然我们能够直接实例化一个 SecurityManager 类,但 Shiro 的 SecurityManager 实现有足够的配置选项及内置组件 使得在 Java 源代码做这件事情变得较为痛苦——如果使用一个灵活的基于文本的配置格式来配置 SecurityManager, 那么这将是一件很容易的事情。 为此,Shiro 通过基于文本的 INI 配置文件提供了一个默认的"共性(common0 码力 | 92 页 | 1.16 MB | 1 年前3
Apache Shiro 1.2.x Reference Manual 中文翻译应用程序的安全。 缓存:缓存是 Apache Shiro 保证安全操作快速、高效的重要手段。 并发:Apache Shiro 支持多线程应用程序的并发特性。 测试:支持单元测试和集成测试,确保代码和预想的一样安全。 "Run As":这个功能允许用户假设另一个用户的身份(在许可的前提下)。 "Remember Me":跨 session 记录用户的身份,只有在强制需要时才需要登录。 Apache org/repos/asf/shiro/trunk/samples/quickstart/ 在Apache Shiro 的源码发布 samples/quickstart 目录中。 源码可以下载。 (译者注:译者也提供了自己的代码,包含了中文注解,本章所含示例如下) 示例1 示例2 示例3 Setup 设置 在这个简单的示例中,我们将创建一个非常简单的命令行应用程序,它将运行并迅速退出,这样你 可以领略到 Shiro 你就会看到我们的小教程应用程序的运行和退出。 您应当会看到类似于下面的输出(译者 注:红框中的内容) 我们已经验证了应用程序成功运行——现在让我们使 Apache Shiro。当我们继续学习教程,每 次我们添加更多的代码之后,您可以运行 mvn compile exec:java 看到我们的变化的结果。 Enable Shiro 使用 使用 Shiro 要理解的第一件事情是 Shiro 几乎所有的事情都和一个中心组件0 码力 | 196 页 | 2.34 MB | 1 年前3
Java 应用与开发 - 线程编程进程一般由程序段、数据段和进程控制块三部分构成进程 实体。 大纲 线程基础 线程控制 线程的同步 相关知识回顾 什么是线程 根据多任务原理,在一个程序内部也可以实现多个任务(顺序控 制流)的并发执行,其中每个任务被称为线程(Thread)。更专 业的表述为: 线程是程序内部的顺序控制流。 大纲 线程基础 线程控制 线程的同步 相关知识回顾 线程和进程的区别和联系 代码 数据 进程空间 打开文件 每个进程都有独立的代码和数据空间(进程上下文),进程切换的 开销大。 2. 线程作为“轻量的进程”,同一类线程共享代码和数据空间,每个 线程有独立的运行栈和程序计数器(PC),线程切换的开销小。 3. 多进程——在操作系统中能同时运行多个任务(程序)。 4. 多线程——在同一应用程序中有多个顺序流同时执行。 大纲 线程基础 线程控制 线程的同步 相关知识回顾 线程和进程的区别和联系 代码 数据 进程空间 进程空间 打开文件 寄存器 栈 线程 1 寄存器 栈 线程 2 寄存器 栈 线程 3 线程与进程的关系 1. 每个进程都有独立的代码和数据空间(进程上下文),进程切换的 开销大。 2. 线程作为“轻量的进程”,同一类线程共享代码和数据空间,每个 线程有独立的运行栈和程序计数器(PC),线程切换的开销小。 3. 多进程——在操作系统中能同时运行多个任务(程序)。 4. 多线程0 码力 | 82 页 | 1010.73 KB | 1 年前3
Java 应用与开发 - Java 内存模型与分配机制这个类型用到的常量的一个有序集合。包括直接常量 (基本类型、String)和对其他类型、方法、字段的符号 引用。池中的数据和数组一样通过索引访问,常量池在 Java 程序的动态链接中起了核心作用。(Perm) 代码段 存放从硬盘上读取的源程序代码。(Perm) 数据段 存放 static 定义的静态成员。(Perm) 1注意创建出来的对象只包含属于各自的成员变量,并不包括成员方法。因 为同一个类的对象拥有各自的成员变量,存储在各自的堆内存中,但是他们共 这个类型用到的常量的一个有序集合。包括直接常量 (基本类型、String)和对其他类型、方法、字段的符号 引用。池中的数据和数组一样通过索引访问,常量池在 Java 程序的动态链接中起了核心作用。(Perm) 代码段 存放从硬盘上读取的源程序代码。(Perm) 数据段 存放 static 定义的静态成员。(Perm) 1注意创建出来的对象只包含属于各自的成员变量,并不包括成员方法。因 为同一个类的对象拥有各自的成员变量,存储在各自的堆内存中,但是他们共 这个类型用到的常量的一个有序集合。包括直接常量 (基本类型、String)和对其他类型、方法、字段的符号 引用。池中的数据和数组一样通过索引访问,常量池在 Java 程序的动态链接中起了核心作用。(Perm) 代码段 存放从硬盘上读取的源程序代码。(Perm) 数据段 存放 static 定义的静态成员。(Perm) 1注意创建出来的对象只包含属于各自的成员变量,并不包括成员方法。因 为同一个类的对象拥有各自的成员变量,存储在各自的堆内存中,但是他们共0 码力 | 44 页 | 818.30 KB | 1 年前3
Linux Docker MessV0.01,约有 一万行代码。 n 1992年,全世界大约有1000个左右的人使用Linux,并有不少人提供初期的代码上载 和评论。 n 1993年,大约由100多个程序员参与内核代码修改,内核核心由5人组成,V0.99 约有 十万行代码。 n 1993年12月,Linux全球用户数约在10万左右。 n 1994年3月,Linux1.0问世,约有17万行代码。它完全按自由免费的协议发布,源码 (due to practical reasons) among other things). Linux History n 1996年6月,Linux内核2.0发布,可支持多个处理器,约由40万行代码。Linux 全球用户数约在350万左右。 n 1997年夏,制作电影《泰坦尼克号》所用的160台Alpha图形工作站中,有105台 采用了Linux操作系统。 n ... ... n http://www System Applications Architecture Kernel n 内存管理 n 进程管理 n 文件系统(虚拟文件系统 VFS) n 设备驱动 n 网络接口 建议阅读Linux内核源代码,可以从Linux-0.11入手,推荐Linux内核完全注释 (赵炯著) Architecture Shell n 系统的用户界面 n 提供用户与内核进行交互操作的一种接口 n 接收用户输入的命令并把它送入内核去执行0 码力 | 77 页 | 7.40 MB | 1 年前3
Hello 算法 1.1.0 Java版书并非完全“免费”。为了不辜负你为本书所付出的宝贵“注意力”,我会竭尽所能,投入最大的“注意力” 来完成本书的创作。 本人自知学疏才浅,书中内容虽然已经过一段时间的打磨,但一定仍有许多错误,恳请各位老师和同学批评 指正。 本书中的代码附有可一键运行的源文件,托管于 github.com/krahets/hello‑algo 仓库。 动画在 PDF 内的展示效果受限,可访问 hello‑algo.com 网页版以获得更优的阅读体验。 到一个家庭,社会的主要组织形式呈现出“树”的特征;冬天的衣服就像“栈”,最先穿上的最后才能脱下; 羽毛球筒则如同“队列”,一端放入、另一端取出;字典就像一个“哈希表”,能够快速查找目标词条。 本书旨在通过清晰易懂的动画图解和可运行的代码示例,使读者理解算法和数据结构的核心概念,并能够通 过编程来实现它们。在此基础上,本书致力于揭示算法在复杂世界中的生动体现,展现算法之美。希望本书 能够帮助到你! i 目 录 第 0 章 前言 Abstract 算法犹如美妙的交响乐,每一行代码都像韵律般流淌。 愿这本书在你的脑海中轻轻响起,留下独特而深刻的旋律。 第 0 章 前言 hello‑algo.com 2 0.1 关于本书 本项目旨在创建一本开源、免费、对新手友好的数据结构与算法入门教程。 ‧ 全书采用动画图解,结构化地讲解数据结构与算法知识,内容清晰易懂,学习曲线平滑。 ‧ 算法源代码皆可一键运行,支持 Python、C+0 码力 | 378 页 | 18.47 MB | 1 年前3
Hello 算法 1.0.0 Java版书并非完全“免费”。为了不辜负你为本书所付出的宝贵“注意力”,我会竭尽所能,投入最大的“注意力” 来完成本书的创作。本人自知学疏才浅,书中内容虽然已经过一段时间的打磨,但一定仍有许多错误,恳请 各位老师和同学批评指正。 本书中的代码附有可一键运行的源文件,托管于 github.com/krahets/hello‑algo 仓库。动画在 PDF 内的 展示效果受限,可访问 hello‑algo.com 网页版以获得更优的阅读体验。 前言 � 算法犹如美妙的交响乐,每一行代码都像韵律般流淌。 愿这本书在你的脑海中轻轻响起,留下独特而深刻的旋律。 第 0 章 前言 hello‑algo.com 2 0.1 关于本书 本项目旨在创建一本开源、免费、对新手友好的数据结构与算法入门教程。 ‧ 全书采用动画图解,结构化地讲解数据结构与算法知识,内容清晰易懂,学习曲线平滑。 ‧ 算法源代码皆可一键运行,支持 Python、C+ 不会之间反复横跳,那么本书正是为你量身定制的! 如果你已经积累一定的刷题量,熟悉大部分题型,那么本书可助你回顾与梳理算法知识体系,仓库源代码可 以当作“刷题工具库”或“算法字典”来使用。 若你是算法“大神”,我们期待收到你的宝贵建议,或者一起参与创作。 � 前置条件 你需要至少具备任一语言的编程基础,能够阅读和编写简单代码。 0.1.2 内容结构 本书的主要内容如图 0‑1 所示。 ‧ 复杂度分析:数据结构和算法的评0 码力 | 376 页 | 17.59 MB | 1 年前3
共 45 条
- 1
- 2
- 3
- 4
- 5













