Java的四大基础特性

一、抽象

父类为子类提供一些属性和行为,子类根据业务需求实现具体的行为。

抽象类使用abstract进行修饰,子类要实现所有的父类抽象方法否则子类也是抽象类。

二、封装

把对象的属性和行为(方法)结合为一个独立的整体,并尽可能隐藏对象的内部实现细节;

在java中,对于对象的内部属性一般用private来实现隐藏,并通过set和get方法对外提供访问接口。

三、继承

子类继承父类的属性和行为,并能根据自己的需求扩展出新的属性和行为,提高了代码的可复用性。

Java的继承通过extends关键字来实现,实现继承的类被称为子类,被继承的类称为父类(有的也称其为基类、超类),父类和子类的关系,是一种一般和特殊的关系;子类扩展父类,将可以获得父类的全部属性和方法。

overide:

当子父类中出现相同方法时,会先运行子类中的方法。
重写的特点:方法名一样,访问修饰符权限不小于父类,返回类型一致,参数列表一致。

四、多态

不修改程序代码就可以改变程序运行时所绑定的具体代码,让程序可以选择多个运行状态;

具体的实现方式就是:接口实现,继承父类进行方法重写,同一个类中进行方法重载。

封装和继承都是为Java语言的多态提供了支撑;多态存在的三个必要条件:

要有继承;
要有重写;
父类引用指向子类对象。

最新文章

  1. [转载]大型网站应用中 MySQL 的架构演变史
  2. ffmpeg编译常规大全
  3. Android 学习第12课,应用出错信息
  4. linux内存负载分析
  5. [HDOJ 1171] Big Event in HDU 【完全背包】
  6. PHP, Python, Node.js 哪个比较适合写爬虫?
  7. easyui datagrid shift 多选
  8. ASP.NET MVC基于标注特性的Model验证:将ValidationAttribute应用到参数上
  9. 2017/10/10 jar包错误
  10. 磁盘IOPS计算与测量
  11. 增加 jQueryValidate的手机号验证功能
  12. 从容器里dump java堆实验探索(原创)
  13. navicat连接mysql出现2059错误
  14. debug protractor
  15. Laravel 返回数据库中的随机一行数据
  16. VIM编码检查
  17. 02.photoshop制作透明图片步骤
  18. sql优化常见的集中方法
  19. python之获取微信服务器的ip地址
  20. 关于有时候导入maven项目时候报错(有红色叹号,类中导入的包提示"the import java.util cannot be resolve,")

热门文章

  1. 数据库系统学习(十)-嵌入式SQL语言之动态SQL
  2. Python 一行命令ftp服务器
  3. Error: cannot call methods on draggable prior to initialization; attempted to call
  4. MySQL的字符编码体系(一)——数据存储编码
  5. react 创建组件 (三)PureComponet
  6. Codeforces Round #258 (Div. 2/A)/Codeforces451A_Game With Sticks
  7. mongodb+php通过_id查询
  8. C# 语言历史版本特性(C# 1.0到C# 7.1汇总更新) C#各版本新特性 C#版本和.NET版本以及VS版本的对应关系
  9. VirtualBox 虚拟Ubuntu系统与主机互ping
  10. 互斥锁和条件变量(pthread)相关函数