Java学习笔记:属性赋值顺序与单例模式详解
需积分: 11 161 浏览量
更新于2024-08-27
收藏 70KB TXT 举报
"Java学习笔记.txt"
在这个Java学习笔记中,我们探讨了几个关键的主题:
1. **属性赋值顺序**:
- Java中属性赋值遵循特定顺序:首先执行默认赋值(如果没有显式设定),然后是显示赋值(即直接在声明时赋值)或代码块赋值,接着是构造器赋值。最后,如果属性尚未被这些方式初始化,可以通过创建类的实例并调用方法赋值。然而,这种方式不推荐用于对象中方法内部,因为这可能导致不可预期的结果。
2. **final关键字的用法**:
- final是一个关键字,用于强调某种不可更改性。它可以修饰类、方法和变量:
- 类:final修饰的类表示该类不可被继承,如String、System和StringBuffer。
- 方法:final方法表示其不可被子类重写,例如Object类中的getClass()方法。
- 变量:final变量,即常量,一旦赋值后就不能改变。它可以在显示初始化、代码块初始化或构造器初始化时使用。
- 对于局部变量,final可以限制其在方法内部的可变性,如方法体内定义的final变量以及作为参数传递的final类型。
3. **单例模式示例**:
- 学习了两种常见的单例模式实现方式:
- **饿汉式**(在类加载时就创建实例):
```java
class Bank {
private Bank() {}
private static Bank instance = new Bank();
public static Bank getInstance() {
return instance;
}
}
```
- **懒汉式(线程不安全)**:
```java
class Bank {
private Bank() {}
private static Bank instance = null;
public static Bank getInstance() {
if (instance == null) {
instance = new Bank();
}
return instance;
}
}
```
- 懒汉式需要注意线程安全问题,若在多线程环境中使用,可能会导致多个实例被创建。
这份笔记涵盖了Java中的基础语法、关键字final的用法以及单例模式的两种常见实现,这些都是Java开发者理解和掌握编程语言核心概念的重要部分。通过深入理解这些内容,可以帮助新手更好地构建和维护高质量的Java应用程序。
2009-09-12 上传
2021-03-30 上传
2020-09-03 上传
2020-03-16 上传
2011-01-13 上传
你走吧起风了__
- 粉丝: 43
- 资源: 2
最新资源
- IEEE 14总线系统Simulink模型开发指南与案例研究
- STLinkV2.J16.S4固件更新与应用指南
- Java并发处理的实用示例分析
- Linux下简化部署与日志查看的Shell脚本工具
- Maven增量编译技术详解及应用示例
- MyEclipse 2021.5.24a最新版本发布
- Indore探索前端代码库使用指南与开发环境搭建
- 电子技术基础数字部分PPT课件第六版康华光
- MySQL 8.0.25版本可视化安装包详细介绍
- 易语言实现主流搜索引擎快速集成
- 使用asyncio-sse包装器实现服务器事件推送简易指南
- Java高级开发工程师面试要点总结
- R语言项目ClearningData-Proj1的数据处理
- VFP成本费用计算系统源码及论文全面解析
- Qt5与C++打造书籍管理系统教程
- React 应用入门:开发、测试及生产部署教程