Java中面向对象的三大特征是什么?

 我来答
尚学堂java学院
2020-11-27 · 百度认证:北京尚学堂科技有限公司官方账号
尚学堂java学院
向TA提问
展开全部
面向对象三大特性
继承:一般类只能单继承,内部类实现多继承,接口可以多继承
封装:访问权限控制public > protected > 包 > private 内部类也是一种封装
多态:编译时多态,体现在向上转型和向下转型,通过引用类型判断调用哪个方法(静态分派)。
运行时多态,体现在同名函数通过不同参数实现多种方法(动态分派)。
希望对您有所帮助!~
勤奋的花大喵
推荐于2019-08-31 · 劫贫济富的喵才是好喵
勤奋的花大喵
采纳数:334 获赞数:3198

向TA提问 私信TA
展开全部
  1. 封装

  2. 继承

  3. 多态

一、Java的多态有哪些具体内容       

  1. 多态原则:(1)对象类型不变(2)只能用引用调用其引用类型中定义的方法 (3)运行时,根据对象的实际类型去找子类覆盖之后的方法

  2. 对象的强制转换: 引用 instanceof 类型格式 

  3. 多态的灵活变换  (1)用于参数列表上: public void m(A a){} 可以用A类的任何子类对象作为参数(2)用在返回值上:public A m(){}  这个方法可能返回A类的任何子类对象

二、Java的组成

  • Java编程语言,即语法。

  • Java文件格式,即各种文件夹、文件的后缀。

  • Java虚拟机(JVM),即处理*.class文件的解释器。

  • Java应用程序接口(Java API)。

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
jiaozi95
2017-12-30 · TA获得超过1685个赞
知道小有建树答主
回答量:1648
采纳率:100%
帮助的人:418万
展开全部
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类的任何子类对象
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
二十伊8794
2020-11-27 · 超过44用户采纳过TA的回答
知道小有建树答主
回答量:186
采纳率:16%
帮助的人:7.2万
展开全部
继承:一般类只能单继承,内部类实现多继承,接口可以多继承
封装:访问权限控制public > protected > 包 > private 内部类也是一种封装
多态:编译时多态,体现在向上转型和向下转型,通过引用类型判断调用哪个方法(静态分派)。
运行时多态,体现在同名函数通过不同参数实现多种方法(动态分派)。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式