14 java面向对象的三大特征【继承、封装、多态】

简介: 封装的实现:实现三部曲:①私有化,属性②提供公共的getXxx()方法②提供公共的setXxx()方法

封装(encapsulation) 隐藏实现细节,保证数据安全

继承(extends) 提高代码的复用性、扩展性与可维护性也相应提高

多态(polymorphic) 简化代码,提高代码可扩展性、可维护性


1 封装 🚩


1.1 封装的实现:


实现三部曲:

①私有化,属性

②提供公共的getXxx()方法

②提供公共的setXxx()方法


2 继承 🚩


2.1 继承的注意事项

(1). 子类继承所有父类的属性和方法,但是私有属性和方法不能在子类中直接访问需要借助公共方方法访问;

(2). 子类在创建对象时必须调用父类的构造器完成父类初始化,

(3). java是单继承机制,一个子类只能有一个直接父类;


2.2 继承的本质


是建立一种对应的查找关系


2.3 super的使用


(1). super是父类的一个引用能访问父类属性,但不能直接访问父类私有属性;

(2). super的访问不限于直接父类,但是遵从就近原则;


3 多态 🚩


3.1 多态概念


(1). 方法或者对象有多种形态,是建立在在继承、封装之上的

(2). 属性的值看编译类型


3.2 动态绑定机制


(1). 当调用对象方法的时候,该对象会与该方法的运行类型绑定

(2).当调用对象属性时,没有动态绑定机制,哪里声明哪里使用


3.3 多态参数问题


方法定义的时候,形式参数使用父类类型的参数,实参可以使用子类类型参数;


目录
相关文章
|
7天前
|
Java 编译器
封装,继承,多态【Java面向对象知识回顾①】
本文回顾了Java面向对象编程的三大特性:封装、继承和多态。封装通过将数据和方法结合在类中并隐藏实现细节来保护对象状态,继承允许新类扩展现有类的功能,而多态则允许对象在不同情况下表现出不同的行为,这些特性共同提高了代码的复用性、扩展性和灵活性。
封装,继承,多态【Java面向对象知识回顾①】
|
5天前
|
Java
java中面向过程和面向对象区别?
java中面向过程和面向对象区别?
15 4
|
5天前
|
SQL 安全 Java
JAVA代码审计SAST工具使用与漏洞特征
JAVA代码审计SAST工具使用与漏洞特征
18 1
|
7天前
|
Java
接口和抽象类【Java面向对象知识回顾②】
本文讨论了Java中抽象类和接口的概念与区别。抽象类是不能被实例化的类,可以包含抽象和非抽象方法,常用作其他类的基类。接口是一种纯抽象类型,只包含抽象方法和常量,不能被实例化,且实现接口的类必须实现接口中定义的所有方法。文章还比较了抽象类和接口在实现方式、方法类型、成员变量、构造方法和访问修饰符等方面的不同,并探讨了它们的使用场景。
接口和抽象类【Java面向对象知识回顾②】
|
10天前
|
Java
Java 多态趣解
在一个阳光明媚的午后,森林中的动物们举办了一场别开生面的音乐会。它们组成了一支乐队,每种动物都有独特的演奏方式。通过多态的魅力,狗、猫和青蛙分别展示了“汪汪”、“喵喵”和“呱呱”的叫声,赢得了观众的阵阵掌声。熊指挥着整个演出,每次调用 `perform()` 方法都能根据不同的动物对象唤起对应的 `makeSound()` 方法,展现了 Java 多态性的强大功能,让整场音乐会既有趣又充满表现力。
|
11天前
|
Java 开发者
Java 面向对象
Java 是一种面向对象的编程语言,通过对象与类的概念组织代码和数据。面向对象编程的核心包括类、对象、继承、多态、封装和抽象。类是对象的蓝图,定义了属性和行为;对象则是类的实例。继承允许子类继承父类的属性和方法,增强代码复用性;多态则支持通过相同接口调用不同类型对象的行为,包括方法重载和重写。封装通过公共方法隐藏对象细节,提高安全性;抽象则对对象特征进行提炼,通过抽象类和接口实现。理解这些概念有助于设计高效、可维护的 Java 应用程序。
|
5月前
|
搜索推荐 Java
Java的面向对象特性主要包括封装、继承和多态
【4月更文挑战第5天】Java的面向对象特性主要包括封装、继承和多态
43 3
|
5月前
|
Java 程序员 编译器
【详识JAVA语言】面向对象程序三大特性之二:继承
【详识JAVA语言】面向对象程序三大特性之二:继承
59 2
|
4月前
|
Java 开发者
Java 面向对象新视界:揭秘子类如何“继承”父类精华,再添“创新”之笔
【6月更文挑战第16天】在Java的面向对象世界,子类继承父类的特性,如`Circle`继承`Shape`,展示“is-a”关系。子类不仅保留父类的`color`和`display`方法,还添加了`radius`属性及定制的显示逻辑。这种继承与创新允许代码复用,增强灵活性和可扩展性,使得构建复杂系统变得更加高效和模块化。通过持续的继承与定制,开发者能构建出一系列独具特色的类,充分展现面向对象编程的力量。
145 57
|
3月前
|
Java 编译器
Java面向对象(三)详解: 封装 | 继承 | 方法重写 | 抽象类
Java面向对象(三)详解: 封装 | 继承 | 方法重写 | 抽象类
下一篇
无影云桌面