
Java核心技术卷一(11版)
文章平均质量分 82
Java核心技术卷一学习笔记
EdSheeran乀
一个在编程路上慢慢前进的小菜鸡~
展开
-
12.多线程
文章目录*12.2线程状态**12.2.1新建线程**12.2.2可运行线程**12.2.3阻塞和等待线程* 并发执行的进程数目并不受限于CPU数目。操作系统会为每个进程分配CPU时间片,给人并行处理的感觉。 多线程程序在更低一层扩展了多任务的概念:单个程序看起来在同时完成多个任务。每一个任务在一个线程中执行。 多进程和多线程的区别在于,每个进程都拥有自己的一整套变量,而线程则共享数据。虽然有风险,但是共享变量使线程之间的通信比进程之间的通信更有效、更容易。此外,在有些操作系统中,与进程相比较,线程更轻量原创 2021-08-11 16:05:14 · 297 阅读 · 0 评论 -
9.集合与映射
文章目录*集合**9.1Java集合框架**9.1.1集合接口与实现分离**9.1.2`Collection`接口**9.1.3迭代器**9.2集合框架中的接口**9.3具体集合**9.3.1链表**9.3.3散列集**9.3.4树集**9.3.5队列与双端队列**9.3.6优先队列(典型用法是任务调度)**9.4映射**9.4.1基本映射操作**9.4.2更新映射条目**9.4.3映射视图**9.4.4弱散列映射(使用弱引用保存键)**9.4.5链接散列集与映射(记住插入元素项的顺序)**9.4.6枚举集原创 2021-08-02 15:50:55 · 845 阅读 · 0 评论 -
8.泛型程序设计
文章目录*泛型程序设计**8.2定义简单泛型类**8.3泛型方法**8.4类型变量的限定**8.5泛型代码和虚拟机**8.5.1类型擦除**8.5.2转换泛型表达式**8.5.3转换泛型方法**8.6限制与局限性**8.6.1不能用基本类型实例化类型参数**8.6.2运行时类型查询只适用于原始类型**8.6.3不能创建参数化类型的数组**8.6.5不能实例化类型变量**8.6.6不能构造泛型数组**8.6.7泛型类的静态上下文中类型变量无效**8.6.8不能抛出或捕获泛型类的实例**8.6.9可以取消对检查原创 2021-08-01 15:58:51 · 540 阅读 · 0 评论 -
7.异常、断言和日志
文章目录*异常、断言和日志**7.1处理错误**7.1.1异常分类**7.1.2声明检查型异常**7.2捕获异常**7.2.1捕获异常**7.2.2捕获多个异常**7.2.3再次抛出异常与异常链**7.2.4`finally`子句**7.2.5`try-with-resources`语句**7.3使用异常的技巧**7.4使用断言* 异常、断言和日志 7.1处理错误 如果由于出现错误而使得某些操作没有完成,程序应该: 返回到一种安全状态,并能够让用户执行其他的命令;或者 允许用户保存所有工作的结果,并以妥原创 2021-07-31 14:31:11 · 273 阅读 · 0 评论 -
6.接口、lambda表达式与内部类
文章目录*接口、`lambda`表达式与内部类**6.1接口**6.1.1接口的概念**6.1.2接口的属性**6.1.5默认方法**6.1.6解决默认方法冲突**6.1.7接口与回调**6.1.9对象克隆**6.2Lambda表达式**6.2.3函数式接口**6.2.4方法引用**6.2.5构造器引用**6.2.6变量作用域**6.2.7处理lambda表达式**6.3内部类**6.3.1使用内部类访问对象状态**6.3.2内部类的特殊语法规则**6.3.3内部类是否有用、必要和安全**6.3.4局部内部原创 2021-07-31 10:16:43 · 622 阅读 · 0 评论 -
5.类的继承
文章目录*继承**5.1类、超类和子类**5.1.5多态**5.1.6理解方法调用**5.1.7阻止继承: `final`类和方法**5.2`Object`: 所有类的超类**5.2.3相等测试与继承**5.2.4`hashCode`方法**5.2.5`toString`方法**5.3泛型数组列表(`List`)**5.6枚举类**5.7反射**5.7.1`Class`类**5.7.3资源**5.7.4利用反射分析类的能力**5.7.5利用反射在运行时分析对象**5.7.6使用反射编写泛型数组代码**5.7原创 2021-07-27 10:43:38 · 143 阅读 · 0 评论 -
4.对象与类
文章目录*对象与类**4.3用户自定义类**4.3.9基于类的访问权限**4.5方法参数**4.10类设计技巧* 对象与类 4.3用户自定义类 4.3.9基于类的访问权限 方法可以访问调用这个方法的对象的私有数据。一个方法可以访问所属类的所有对象的私有数据: class Employee { // ... public boolean equals(Employee other) { return name.equals(other.name); } } //原创 2021-07-27 10:40:08 · 99 阅读 · 0 评论 -
3.Java的基本程序设计结构
文章目录*Java的基本程序设计结构**3.3数据类型**3.3.1整型**3.3.2浮点型**3.5运算符**3.5.2数值类型之间的转换**3.6字符串**3.6.3不可变字符串* Java的基本程序设计结构 3.3数据类型 Java是一种强类型语言,这就意味着必须为每一个变量声明一种类型。 3.3.1整型 由于java程序必须保证在所有机器上都能够得到相同的运行结果,所以各种数据类型的取值范围必须固定。 从java7开始,加上前缀0b或者0B就可以写二进制数。例如:0b1001就是9。同样从J原创 2021-07-27 10:38:02 · 116 阅读 · 0 评论