Java 面向对象之旅:在封装的港湾中,找到代码的安宁。

简介: 【6月更文挑战第15天】封装是Java面向对象的核心,它保护了类的内部数据,如`Book`和`Student`类中的属性。通过设定私有成员和公共方法,代码更有序,防止直接访问导致的混乱。封装提供了一种控制数据交互的方式,确保安全,如`setGpa()`方法验证输入。这使得代码结构清晰,如同港湾中的船只,井然有序,赋予编程过程美感和安全感。在面向对象的旅程中,封装是我们的庇护所,助力我们构建更美好的程序世界。

当我们踏上 Java 面向对象的奇妙旅程时,封装就如同一座宁静的港湾,给予我们的代码一份温馨与安全。

让我们从一个简单的示例开始感受封装的魅力。假设我们有一个“Book”类:

public class Book {
   
    private String title;
    private String author;

    public Book(String title, String author) {
   
        this.title = title;
        this.author = author;
    }

    public String getTitle() {
   
        return title;
    }

    public String getAuthor() {
   
        return author;
    }
}

在这里,书名和作者被封装在类的内部,成为了它的私有成员。这种封装就像是给这些重要的信息围上了一圈温暖的保护墙。

为什么要这样做呢?想象一下,如果这些属性可以被随意访问和修改,那我们的代码世界将会变得多么混乱。封装确保了只有通过特定的方法,如 getTitle() 和 getAuthor(),才能与这些关键信息进行交互。

它给予了我们一种安心的感觉,就像在一个温馨的家中,我们知道自己的珍贵物品被妥善保管着。

再来看一个稍微复杂一点的例子,比如一个“Student”类:

public class Student {
   
    private int id;
    private String name;
    private double gpa;

    public Student(int id, String name, double gpa) {
   
        this.id = id;
        this.name = name;
        this.gpa = gpa;
    }

    public int getId() {
   
        return id;
    }

    public String getName() {
   
        return name;
    }

    public double getGpa() {
   
        return gpa;
    }

    public void setGpa(double gpa) {
   
        if (gpa >= 0 && gpa <= 4.0) {
   
            this.gpa = gpa;
        } else {
   
            System.out.println("无效的 GPA 值!");
        }
    }
}

在这个例子中,学生的各种信息被封装起来,我们通过方法来访问和修改相关属性。

封装让我们的代码结构更加清晰,就像在港湾中,船只整齐地停靠,一切都井然有序。

当我们在 Java 的海洋中航行时,封装就是那片宁静的港湾,让我们的代码找到安宁与归属。它让我们的编程过程变得更加美好和富有诗意。

让我们继续在这充满温情的 Java 面向对象之旅中前行,在封装的港湾中,享受代码带来的安宁与和谐,创造出更加美妙的程序世界。无论是小小的应用程序,还是庞大的系统,封装都将是我们坚实的依靠,为我们的代码注入温馨与安全的力量。让我们紧紧拥抱封装,在代码的海洋中乘风破浪,驶向成功的彼岸。

相关文章
|
2天前
|
XML 安全 Java
Java反射机制:解锁代码的无限可能
Java 反射(Reflection)是Java 的特征之一,它允许程序在运行时动态地访问和操作类的信息,包括类的属性、方法和构造函数。 反射机制能够使程序具备更大的灵活性和扩展性
15 5
Java反射机制:解锁代码的无限可能
|
4天前
|
存储 安全 Java
系统安全架构的深度解析与实践:Java代码实现
【11月更文挑战第1天】系统安全架构是保护信息系统免受各种威胁和攻击的关键。作为系统架构师,设计一套完善的系统安全架构不仅需要对各种安全威胁有深入理解,还需要熟练掌握各种安全技术和工具。
27 10
|
1天前
|
Java 关系型数据库 数据库
面向对象设计原则在Java中的实现与案例分析
【10月更文挑战第25天】本文通过Java语言的具体实现和案例分析,详细介绍了面向对象设计的五大核心原则:单一职责原则、开闭原则、里氏替换原则、接口隔离原则和依赖倒置原则。这些原则帮助开发者构建更加灵活、可维护和可扩展的系统,不仅适用于Java,也适用于其他面向对象编程语言。
7 2
|
6天前
|
搜索推荐 Java 数据库连接
Java|在 IDEA 里自动生成 MyBatis 模板代码
基于 MyBatis 开发的项目,新增数据库表以后,总是需要编写对应的 Entity、Mapper 和 Service 等等 Class 的代码,这些都是重复的工作,我们可以想一些办法来自动生成这些代码。
16 6
|
6天前
|
Java
通过Java代码解释成员变量(实例变量)和局部变量的区别
本文通过一个Java示例,详细解释了成员变量(实例变量)和局部变量的区别。成员变量属于类的一部分,每个对象有独立的副本;局部变量则在方法或代码块内部声明,作用范围仅限于此。示例代码展示了如何在类中声明和使用这两种变量。
|
7天前
|
存储 Java API
优雅地使用Java Map,通过掌握其高级特性和技巧,让代码更简洁。
【10月更文挑战第19天】本文介绍了如何优雅地使用Java Map,通过掌握其高级特性和技巧,让代码更简洁。内容包括Map的初始化、使用Stream API处理Map、利用merge方法、使用ComputeIfAbsent和ComputeIfPresent,以及Map的默认方法。这些技巧不仅提高了代码的可读性和维护性,还提升了开发效率。
22 3
|
6月前
|
搜索推荐 Java
Java的面向对象特性主要包括封装、继承和多态
【4月更文挑战第5天】Java的面向对象特性主要包括封装、继承和多态
48 3
|
6月前
|
Java 程序员 编译器
【详识JAVA语言】面向对象程序三大特性之二:继承
【详识JAVA语言】面向对象程序三大特性之二:继承
65 2
|
5月前
|
Java 开发者
Java 面向对象新视界:揭秘子类如何“继承”父类精华,再添“创新”之笔
【6月更文挑战第16天】在Java的面向对象世界,子类继承父类的特性,如`Circle`继承`Shape`,展示“is-a”关系。子类不仅保留父类的`color`和`display`方法,还添加了`radius`属性及定制的显示逻辑。这种继承与创新允许代码复用,增强灵活性和可扩展性,使得构建复杂系统变得更加高效和模块化。通过持续的继承与定制,开发者能构建出一系列独具特色的类,充分展现面向对象编程的力量。
150 57
|
4月前
|
Java 编译器
Java面向对象(三)详解: 封装 | 继承 | 方法重写 | 抽象类
Java面向对象(三)详解: 封装 | 继承 | 方法重写 | 抽象类