大二Java简明总结:类与对象、单例模式与懒汉/饿汉模式详解

需积分: 6 0 下载量 176 浏览量 更新于2024-08-04 收藏 57KB MD 举报
Java是一种广泛使用的面向对象编程语言,尤其在企业级应用开发中占据重要地位。本文将为大二的学生提供一份简洁且易于理解的Java学习总结,重点关注类与对象的基础概念,以及单例模式和工厂模式中的懒汉模式与饿汉模式。 **类与对象**: Java中的类是对象的蓝图,它定义了一组属性和行为。总结中的标准规范指出,一个标准的Java Bean应具备以下结构: 1. **无参构造函数**: 类需要有一个不带参数的构造函数,以便在创建新对象时初始化。 2. **属性私有化**: 使用`private`关键字来保护属性,确保它们对外部不可直接访问,通过get和set方法进行操作,符合封装原则。 3. **get和set方法**: 共享的getter和setter方法用于获取和设置属性值,提供数据的访问控制。 **开关原则 (开闭原则)**: 这是面向对象设计的原则之一,强调系统的扩展性优于修改。即系统应对变化封闭,对扩展开放。在设计类时,应避免频繁修改现有代码,而应该通过添加新的功能模块来适应需求的变化。 **单例模式**: 单例模式确保一个类只有一个实例,并提供全局访问点。文章中提到的单例实现方式是通过私有化构造函数,禁止类外部直接创建实例,然后通过静态方法返回唯一实例。私有化构造函数防止了直接实例化,`synchronized`关键字确保线程安全。 **懒汉模式与饿汉模式**: 这两种是单例模式的不同实现策略: - **懒汉模式**: 在实际需要时才创建单例实例,避免了不必要的初始化开销。如文中所示,`LH`类的`create()`方法就是懒汉模式,当第一次请求时才会创建实例。但这种方式没有完全解决多线程下的线程安全性问题。 - **饿汉模式**: 在类加载时就预先创建单例实例,保证了线程安全。`EH`类的`EH()`构造函数即为饿汉模式,类加载后就持有实例。这虽然解决了线程安全性,但可能导致早期的性能开销。 测试代码展示了如何在`main`方法中创建和使用这些单例对象,并观察其运行结果。 通过学习这部分内容,大二学生可以加深对Java类、对象、封装、单例模式和不同设计模式的理解,有助于巩固基础并为后续的高级主题打下坚实基础。