文档章节

每日一题:​面向对象的特征有哪些?

 彤哥读源码
发布于 2019/12/04 23:35
字数 504
阅读 100
收藏 2

问题:面向对象的特征有哪些?

答:封装,继承,多态和抽象。

1. 封装 封装给对象提供了隐藏内部特性和行为的能力。对象提供一些能被其他对象访问的方法来改变它内部的数据。在 Java 当中,有 3 种修饰符:public,private 和 protected。每一 种修饰符给其他的位于同一个包或者不同包下面对象赋予了不同的访问权限。

下面列出了使用封装的一些好处:

  • 通过隐藏对象的属性来保护对象内部的状态

  • 提高了代码的可用性和可维护性,因为对象的行为可以被单独的改变或者是扩展

  • 禁止对象之间的不良交互,提高模块化

2. 继承 继承给对象提供了从基类获取字段和方法的能力。继承提供了代码的重用行,也可以在不修改类的情况下给现存的类添加新特性。

3. 多态 多态是编程语言给不同的底层数据类型做相同的接口展示的一种能力。一个多态类型上的操作可以应用到其他类型的值上面。

4. 抽象 抽象是把想法从具体的实例中分离出来的步骤,因此,要根据他们的功能而不是实现细节来创建类。Java 支持创建只暴露接口而不包含方法实现的抽象的类。这种抽象技术的主要目的是把类的行为和实现细节分离开。

© 著作权归作者所有

彤哥读源码

粉丝 324
博文 85
码字总数 198526
作品 0
深圳
私信 提问
加载中

评论(0)

JS每日一题: 前端优化手段有哪些

20190118问: 前端优化手段有哪些? 静态资源合并压缩(js,css, images) 请求数量优化 Gzip压缩 带宽优化 CDN 就近节点,减少DNS查找 按需加载 lazyload 减少请求 骨架屏 优化白屏 web缓存 缓存...

JS每日一题
2019/01/23
0
0
【Java每日一题】20161026

20161025问题解析请点击今日问题下方的“【Java每日一题】20161026”查看 今日问题: 请问主程序哪些语句会有编译错误?(点击以下“【Java每日一题】20161026”查看20161025问题解析) 题目...

weknow
2016/10/26
13
0
A​n​d​r​o​i​d​开​发​代​码​规​范

Android开发代码的规范 1.命名基本原则 在面向对象编程中,对于类,对象,方法,变量等方面的命名是非常有技巧的。比如,大小写的区分, 使用不同字母开头等等。但究其本,追其源,在为一个资...

小张-
2014/05/23
191
0
JS每日一题: Call,Apply,Bind的使用与区别,如何实现一个bind?

20190115问: Call,Apply,Bind的使用与区别,如何实现一个bind? 相同点: 都是使用于方法借用及明确this指向场景 第一个参数都是this要指向的对象 都可以利用后续参数传参 不同点: 参数传递...

JS每日一题
2019/01/23
0
0
拍拍贷第四届魔镜杯大赛-冠亚季军方案梳理 - 知乎

写在前面 这是即2019腾讯广告算法之后,又一场数据竞赛。这次比赛以互联网金融信贷业务为背景,帮助选手了解相关业务。 魔镜杯大赛迄今已连续举办四届,逐渐成为国际金融科技领域的重磅赛事之...

机器学习理论与数据竞赛实战
2019/10/21
0
0

没有更多内容

加载失败,请刷新页面

加载更多

入门实战: ELK

ELK

BeanHo
34分钟前
22
0
PHP一致性hash代码

[TOC] PHP实现一致性hash bash命令 因为下面PHP代码的模拟用户用的是随机数,所以统计结果达不到绝对的均衡. php ./hash.php | sort | uniq -c | sort PHP代码 这是之前学的时候留下来的测试...

我爱吃炒鸡
今天
94
0
OSChina 周六乱弹 —— 现在看动弹的人都是什么状态

Osc乱弹歌单(2020)请戳(这里) 【今日歌曲】 @薛定谔的兄弟 :分享洛神有语创建的歌单「我喜欢的音乐」: 《夏日、教室与望着窗外的我》- Candy_Wind 手机党少年们想听歌,请使劲儿戳(这里...

小小编辑
今天
899
11
wamp环境安装redis扩展

1.查看phpinfo信息根据配置信息下载对应的扩展 关键信息:VC14,TS,x86 2.下载php_redis和php_igbinary扩展 php_redis扩展下载地址: https://windows.php.net/downloads/pecl/snaps/redis...

点滴课程
今天
36
0
开源商城开发笔记1-创建MyBatis示例

一、修改pom.xml,引入MyBatis,JUnit,Log4j <dependencies><dependency><groupId>org.mybatis</groupId><artifactId>mybatis</artifactId><version>3.5.4</version>......

土龙
今天
56
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部