当前位置:网站首页 > Java基础 > 正文

基础java常用单词



文章目录

  • JAVA基础知识总结(三)
    • 封装、继承、多态、和抽象是基础java常用单词面向对象编程(OOP)四大基本特性。理清这四个概念能帮助我们构建模块化、可重用、可维护的代码,所以理解他们非常重要。接下来先介绍封装和继承。
    • 封装
        • 1. 封装的基本概念
        • 2. 封装的优点
        • 3. 封装的实现
        • 4. 封装的典型示例
        • 5. 访问修饰符的作用范围
        • 6. 封装的优点
        • 7. 封装与访问控制
        • 8. 封装的应用场景列举
        • 9. 封装与数据校验
    • 继承
        • 1. 继承的基本概念
        • 2. 继承的优点
        • 3. 继承的实现
        • 4. super 关键字
        • 5. 方法重写(Override)
        • 6. 构造函数和继承
        • 7. 访问修饰符与继承
        • 8. 继承与多态(多态的细节放在后面章节介绍)
        • 9. final 关键字
        • 10. Object 类
        • 11. 单继承 vs 多继承
        • 12. 继承的好处与注意事项
        • 13. 继承与组合
      • 总结


JAVA基础知识总结(三)


封装、继承、多态、和抽象是面向对象编程(OOP)四大基本特性。理清这四个概念能帮助我们构建模块化、可重用、可维护的代码,所以理解他们非常重要。接下来先介绍封装和继承。

封装

封装(Encapsulation) 是面向对象编程的四大基本特性之一,它是通过将对象的属性和行为隐藏起来,只暴露必要的方法给外部访问,从而保护数据和实现细节。这种方式使类内部的数据不可直接被外部修改,有效增强了程序的安全性和可维护性。

1. 封装的基本概念

封装是通过将类的字段(属性)声明为私有(private),然后提供公共(public)的方法(如 getter 和 setter)来间接访问这些字段。这样,外部类无法直接操作对象的数据,而只能通过类提供的方法来操作数据。

2. 封装的优点
  • 数据保护:防止外部类直接访问和修改类的内部数据,确保对象的状态安全。
  • 提高代码可维护性:可以在不影响外部类的情况下修改类的内部实现细节。
  • 控制访问级别:通过提供特定的访问控制方法,控制对象数据的读写权限。
  • 隐藏实现细节:用户只需知道如何使用类,而无需了解类内部是如何实现的。
3. 封装的实现

在 Java 中,封装通过使用访问修饰符来实现,常用的修饰符有 、 和 。

  • :仅类内部可访问,外部类和子类无法直接访问。
  • :任何地方都可访问。
  • :同包和子类可访问,外部包的类不可访问。
4. 封装的典型示例
 

在这个例子中, 类的属性 和 是私有的(),只能通过公共的 、、、 方法来访问和修改。这种方式确保了数据的安全性和灵活性,例如在 中添加了年龄不能为负数的校验逻辑。

5. 访问修饰符的作用范围
修饰符 类内部 同包 子类 其他包是否否否是是否否是是是否是是是是
6. 封装的优点
  • 提高数据安全性:防止外部类对内部数据进行不合法的访问或修改。
  • 简化代码使用:通过简化的接口与用户交互,隐藏复杂的实现细节。
  • 灵活性:可以通过 getter 和 setter 方法控制数据的访问和修改,还可以在方法中添加数据校验逻辑。
7. 封装与访问控制

封装不仅仅是为了数据隐藏,它还允许类提供控制数据访问的接口。类可以决定哪些信息可以暴露给外部,哪些信息应当保留在内部。这种设计能提高系统的灵活性与可扩展性。例如,通过 setter 方法可以引入数据校验逻辑,确保属性值符合预期,而不会随意被修改。

8. 封装的应用场景列举
  • 数据保护:例如,在银行系统中,账户余额是一个敏感数据,必须通过严格控制的方式访问和修改。
  • API 设计:在设计公共 API 时,封装可以隐藏内部实现细节,保持 API 的简单易用。
  • 提高类的灵活性:封装的类可以根据需求更改内部实现,而不影响类的使用者。
9. 封装与数据校验

封装不仅仅是隐藏属性,还可以在 getter 和 setter 方法中加入逻辑来控制数据的合法性。例如, 方法可以检查传入的值是否为有效的年龄范围,从而确保类的状态始终是有效的。

继承

继承(Inheritance) 是面向对象编程的四大基本特性之一,指的是一个类可以继承另一个类的属性和方法,从而实现代码复用和扩展。在 Java 中,继承通过关键字 实现。

1. 继承的基本概念

继承允许一个类(子类或派生类)继承另一个类(父类或基类)的成员(属性和方法),从而减少重复代码。通过继承,子类可以复用父类的已有功能,还可以在此基础上进行扩展或修改。

2. 继承的优点
  • 代码复用:通过继承,子类无需重复编写父类已有的代码,直接继承其成员。
  • 代码扩展性:可以通过继承对父类的功能进行扩展或修改,提升代码的灵活性和可维护性。
  • 结构清晰:继承关系使代码结构更加清晰,逻辑上也更合理。
3. 继承的实现

继承在 Java 中是通过 关键字实现的。Java 只支持单继承,即一个类只能有一个直接父类,但可以实现多个接口。

 

在这个例子中, 类继承了 类, 类除了可以使用父类的 方法外,还可以定义自己的 方法。

4. super 关键字
  • 用于引用父类的属性和方法,可以用在子类中访问父类的构造器或重写的方法。
  • :调用父类的构造方法,必须是子类构造器的第一行。
  • :调用父类的成员方法,特别是在子类重写了父类方法时仍可以通过 访问父类版本。
5. 方法重写(Override)

子类可以重写(Override)父类的方法,即在子类中提供与父类同名的、相同参数列表的方法,从而对父类方法进行修改或扩展。重写时,需使用 注解来标识。

 

重写要求:

  • 方法名、参数列表必须相同。
  • 返回值类型可以是父类返回类型的子类型。
  • 访问修饰符不能比父类的更严格。
6. 构造函数和继承

子类不能继承父类的构造函数,但可以通过 调用父类的构造函数来初始化继承的属性。在创建子类对象时,首先会调用父类的构造函数,然后调用子类的构造函数。

 
7. 访问修饰符与继承
  • :子类无法访问父类的私有成员。
  • :子类可以访问父类的受保护成员。
  • :子类可以访问父类的公共成员。
  • (包访问权限):子类只能在同一包内访问父类的成员。
8. 继承与多态(多态的细节放在后面章节介绍)

多态是继承的一个重要应用,允许父类的引用指向子类的对象,从而在运行时决定调用哪个类的方法。

 

多态通过方法重写运行时动态绑定实现。父类引用可以调用被重写的方法,实际调用的将是子类版本的方法。

9. final 关键字
  • 使用 修饰的类不能被继承。例如, 表示 类无法被继承。
  • 使用 修饰的方法不能被子类重写。
10. Object 类

在 Java 中,所有类默认继承自 类, 是所有类的根类。 类提供了一些常用方法,如 、 和 ,这些方法可以在子类中重写。

11. 单继承 vs 多继承

Java 不支持多继承,即一个类只能有一个直接父类。这是为了避免菱形继承问题,即子类继承两个父类时,如果这两个父类有相同的方法,可能会导致混乱和冲突。Java 通过接口机制弥补了单继承的局限,允许一个类实现多个接口。

12. 继承的好处与注意事项
  • 好处:提高了代码复用性、扩展性、可维护性。
  • 注意事项:过度使用继承可能导致代码耦合度增加,不利于维护。应在类之间有明显“is-a”关系时使用继承。
13. 继承与组合

有时继承不是最优选择,应提倡组合优于继承,即优先通过对象组合的方式来复用代码,而不是通过继承,特别是当类之间没有明确的“is-a”关系时。

总结

封装通过限制直接访问对象数据的方式,提高了数据的安全性和程序的灵活性。它通过提供访问控制方法,确保对象内部的状态只能通过安全的方式进行更改。封装是面向对象编程的重要机制,广泛应用于类的设计中。

版权声明


相关文章:

  • java基础面试问NIO吗2024-11-07 11:10:04
  • 自己定义队列 java基础类2024-11-07 11:10:04
  • java基础王者归来2024-11-07 11:10:04
  • java开发基础内容2024-11-07 11:10:04
  • java基础数据类型 长度2024-11-07 11:10:04
  • 学java要有c语言基础吗2024-11-07 11:10:04
  • java零基础字符编码2024-11-07 11:10:04
  • java基础班学后忘记2024-11-07 11:10:04
  • java基础知识点笔试2024-11-07 11:10:04
  • 如何测试java基础2024-11-07 11:10:04