java面向对象的三要素是什么

java中的面向对象的三大基本特征,不是三要素:【封装】、【继承】、【多态】一、封装 对象要有一个明确的边界;边界的划分(对象各司其职、对象的粒度、对象的可重用性)具体来说:1.属性: 私有 private(提供set和get方法)2.方法: 公开或私有public/private 3.方法声明 --> 公开 方法实现 --...
java面向对象的三要素是什么
java的三要素分别为封装,继承,多态,java这正是因为这三点构成了面向对象这样优雅的编程思想。
华清远见教育来为大家对这三个特点一一分析
封装:
前面有private 修饰的【属性】或者是【方法】, 不能【直接】被外部类的实例化对象访问,这样就是封装。
像属性或者方法用private 修饰之后 不能直接访问。
class Person{
private String name;// 属性被封装
//get set 方法可以
//public 修饰的方法可以
public String printName(){ //【自定义的方法】
return name;
}
}
现这种 一般如果name的属性是public,new Person().name 这样就可以直接访问。
现在如果想要访问的话 new Person().name是错误的,因为name被封装,不能直接的访问了。
要通过它里面的其他的方法访问,new Person().printName();【get set 方法可以访问,其他的public修饰的方法也可以】

继承
(1)继承关系是传递的。若类C继承类B,类B继承类A(多继承),则类C既有从类B那里继承下来的属性与方法,也有从类A那里继承下来的属性与方法,还可以有自己新定义的属性和方法。继承来的属性和方法尽管是隐式的,但仍是类C的属性和方法。继承是在一些比较一般的类的基础上构造、建立和扩充新类的最有效的手段。
(2)继承简化了人们对事物的认识和描述,能清晰体现相关类间的层次结构关系。
(3)继承提供了软件复用功能。若类B继承类A,那么建立类B时只需要再描述与基类(类A)不同的少量特征(数据成员和成员方法)即可。这种做法能减小代码和数据的冗余度,大大增加程序的重用性。
(4)继承通过增强一致性来减少模块间的接口和界面,大大增加了程序的易维护性。
(5)提供多重继承机制。从理论上说,一个类可以是多个一般类的特殊类,它可以从多个一般类中继承属性与方法,这便是多重继承。Java出于安全性和可靠性的考虑,仅支持单重继承,而通过使用接口机制来实现多重继承。
多态
多态具体表现在重写和重载
多态就是类的多种表现方式
比如同名不同参
子类重写父类2017-09-22
java中的面向对象的三大基本特征,不是三要素:【封装】、【继承】、【多态】
一、封装
对象要有一个明确的边界;边界的划分(对象各司其职、对象的粒度、对象的可重用性)
具体来说:
1.属性: 私有 private(提供set和get方法)
2.方法: 公开或私有public/private
3.方法声明 --> 公开
方法实现 --> 隐藏
实现改变时,对对象的使用者没有影响。
二、继承
共性放到父类,特性放到子类;子类,父类 --> 其实就是特殊 --> 一般
1.关键字: extends 例如:Dog extends Animal{}
2.java中一个类最多只能有一个直接的父类,即单继承(具有简单性、树形结构),
C++中是单继承
java中要实现多继承,通过接口来实现。
3.父类中所有属性和方法都能继承给子类;父类中的私有方法不能继承给子类。
4.java中的访问修饰符
访问修饰符
访问权限
继承 
private 本类内部 不能继承
default 本类+同包 同包子类可以继承
protected 本类+同包+不同子包 可以继承
public 公开 可以继承
5.构造对象过程
(1)分配空间
(2)递归地构造父类对象
a. 父类 初始化属性
b. 父类 构造方法
(3)初始化属性
(4)调用构造方法
6.super
用法:
super() 调用父类的构造方法,只能出现在构造方法的第一行
super.方法名 super表示父类的对象,通过它去调用父类的方法
注意:在写类的时候,一定要写默认无参的构造方法,如果一个构造方法的
第一句既不是this(),也不是super()时,那么就会在这里隐含的调用
他的父类的无参的构造方法,即隐含的有super()。
三、多态
运行时多态。
子类的对象放在父类的引用中,例如 Animal a=new Dog,子类对象当父类对象来使用。
1.多态原则:
(1)对象类型不变
(2)只能用引用调用其引用类型中定义的方法
(3)运行时,根据对象的实际类型去找子类覆盖之后的方法
例子:
有Animal类中有eat()和sleep()两个方法,sleep()中睡8小时;子类Dog中有
eat()方法,sleep()方法中睡6小时,还有wangwang()方法。
现创建Animal a=new Dog(); 不能调用a.wangwang(),调用a.sleep()输出睡6小时。
2.对象的强制转换
格式: 引用 instanceof 类型
引用所指的对象是否与类相符,返回值boolean值。
用法:
Animal a=new Cat();
if(a instanceof Dog)
{
Dog d=(Dog)a;
d.wangwang();
}
说明:如果只有Dog d=(Dog)a;运行时错误,因为a是Cat而不是Dog (多态原则第一条)
3.多态的灵活变换
(1)用于参数列表上:
public void m(A a){} 可以用A类的任何子类对象作为参数
(2)用在返回值上:
public A m(){} 这个方法可能返回A类的任何子类对象2017-09-22
封装,继承,多态,为三要素2017-09-22
mengvlog 阅读 7 次 更新于 2025-07-19 08:07:45 我来答关注问题0
  • Java中面向对象的三大特征包括:封装:定义:封装是指将对象的属性和行为结合在一起,并隐藏对象的内部实现细节,只对外提供必要的接口。作用:通过封装,可以提高代码的安全性,防止外部直接访问和修改对象的内部状态;同时,封装还能简化代码,提高可维护性,因为内部实现细节被隐藏,外部只需要通过接口进行交...

  • Java面向对象的三大特性是:封装、继承和多态。封装:封装是面向对象编程的核心概念之一。它指将数据和操作数据的方法结合在一个称为“对象”的实体中,并隐藏对象的内部实现细节,只对外提供必要的接口。这样做可以提高数据的安全性,防止外部直接访问和修改对象的内部数据,同时也增加了代码的模块化和可维...

  • Java面向对象的三大个特征是封装,继承,多态。1、封装:封装主要是对类的封装。一个业务逻辑的实现往往需要多个对象和方法去实现,封装是对不同对象的方法进行封装处理,即不同对象的方法处在一个单独的对象类中。2 、继承:使用一个特殊类拥有其全部的属性和服务,作为父类,他可以有多个子类,一般的...

  •  吞星7 面向对象编程方法的要点

    面向对象的两个要素:类和对象 类 :对一类事物的描述,是抽象的、概念上的定义 对象:是实际存在的该类事物的每个个体(实实在在的个体),因而也称为实例(instance)。以人为例子: 类 = 抽象概念的人 ; 对象 = 实实在在的某个人 面向对象程序设计的重点是类的设计 设计类,就是设计类的成员。

  • 1. Java继承 Java继承是面向对象的最显著的一个特征。继承是从已有的类中派生出新的类,新的类能吸收已有类的数据属性和行为,并能扩展新的能力。JAVA不支持多继承,单继承使JAVA的继承关系很简单,一个类只能有一个父类,易于管理程序,父类是子类的一般化,子类是父类的特化(具体化)继承所表达的...

檬味博客在线解答立即免费咨询

Java相关话题

Copyright © 2023 WWW.MENGVLOG.COM - 檬味博客
返回顶部