1. 首页
  2. java成神之路

Java基础:Java面向对象的特征

面向对象的三个基本特征是:封装、继承、多态。

封装

封装最好理解了。封装是面向对象的特征之一,是对象和类概念的主要特性。

封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。

封装的优点

  • 将变化隔离
  • 便于使用
  • 提高重用性
  • 提高安全性

封装的缺点:

将变量等使用private修饰,或者封装进方法内,使其不能直接被访问,增加了访问步骤与难度!

封装的实现形式

  • A、使用访问权限修饰符private
    在定义JavaBean时对于成员变量使用private进行修饰,同时对外提供set、get方法
    使用了private修饰的成员在其他类中不能直接访问,此时需要使用set、get方法进行。
  • B、定义一个Java类与Java的方法就是最简单最常见的面向对象的封装操作,这些操作符合隐藏实现细节,提供访问方式的思路。

继承

面向对象编程 (OOP) 语言的一个主要功能就是“继承”。继承是指这样一种能力:它可以使用现有类的所有功能,并在无需重新编写原来的类的情况下对这些功能进行扩展。

通过继承创建的新类称为“子类”或“派生类”。

被继承的类称为“基类”、“父类”或“超类”。

继承的过程,就是从一般到特殊的过程。

要实现继承,可以通过“继承”(Inheritance)和“组合”(Composition)来实现。

在Java语言中,一个类只能单继承,可以实现多个接口。继承就是子类继承父类的特征和行为,使得子类对象具有父类的非private属性和方法。

类的继承格式:

通过extends关键字申明一个类继承另一个类,如

class父类{}

class子类extends父类{}

为什么需要继承?

  • 减少代码重复、臃肿,提高代码可维护性。

继承的特性:

  • 子类拥有父类非private的属性和方法;
  • 子类可以拥有完全属于自己的属性和方法(对父类扩展);
  • Java是单继承(每个子类只能继承一个父类);但是Java可以是多重继承(如A继承B,B继承C)。

Super和this关键字:

Super关键字:我们可以通过super关键字来实现子类对父类成员的访问,引用当前实例对象的父类。

This关键字:指向实例对象自己的引用。

多态

多态就是同一个接口,使用不同的实现,而执行不同的操作。

多态的三个必要条件:

  • 继承(extends)
  • 重写(子类重写父类的同名方法)
  • 父类引用指向子类的对象,如:

子类继承父类,重写父类的方法,当子类对象调用重写的方法时,调用的是子类的方法,而不是父类的方法,当想要调用父类中被重写的方法时,则需使用关键字super。

参考资料

https://blog.csdn.net/Wei_HHH/article/details/74864628

https://blog.csdn.net/u011159417/article/details/73500054

https://blog.csdn.net/cancan8538/article/details/8057095

看完两件小事

如果你觉得这篇文章对你挺有启发,我想请你帮我两个小忙:

  1. 关注我们的 GitHub 博客,让我们成为长期关系
  2. 把这篇文章分享给你的朋友 / 交流群,让更多的人看到,一起进步,一起成长!
  3. 关注公众号 「方志朋」,公众号后台回复「666」 免费领取我精心整理的进阶资源教程
  4. JS中文网,Javascriptc中文网是中国领先的新一代开发者社区和专业的技术媒体,一个帮助开发者成长的社区,是给开发者用的 Hacker News,技术文章由为你筛选出最优质的干货,其中包括:Android、iOS、前端、后端等方面的内容。目前已经覆盖和服务了超过 300 万开发者,你每天都可以在这里找到技术世界的头条内容。

    本文著作权归作者所有,如若转载,请注明出处

    转载请注明:文章转载自「 Java极客技术学习 」https://www.javajike.com

    标题:Java基础:Java面向对象的特征

    链接:https://www.javajike.com/article/2128.html

« Java基础:Javafinally语句到底是在return之前还是之后执行?
Java基础:Java中的==,equals与hashCode的区别与联系»

相关推荐

QR code