1、面向对象有三大特性,分别是:封装、继承和多态。
2、封装:面向对象的封装就是把描述一个对象的属性和行为的代码封装在一个类中,有些属性是不希望公开的,或者说被其他对象访问的,所以我们使用private修饰该属性,使其隐藏起来;类中提供了方法(用public修饰),常用的是get、set方法,可以操作这些被隐藏的属性,其他类可以通过调用这些方法,改变隐藏属性的值!
封装是保证软件部件具有优良的模块性的基础,封装的目标就是要实现软件部件的“高内聚、低耦合”,防止程序相互依赖性而带来的变动影响。在面向对象的编程语言中,对象是封装的最基本单位,面向对象的封装比传统语言的封装更为清晰、更为有力。
3、继承:在定义和实现一个类的时候,可以在一个已经存在的类的基础之上来进行,使用extends关键字实现继承;子类中可以加入若干新的内容,或修改原来的方法使之更适合特殊的需要,这就是继承。继承是子类自动共享父类数据和方法的机制,这是类之间的一种关系,提高了软件的可重用性和可扩展性。
4、多态:多态就是在声明时使用父类,在实现或调用时使用具体的子类;即不修改程序代码就可以改变程序运行时所绑定的具体代码,让程序可以选择多个运行状态,这就是多态性,多态增强了软件的灵活性和扩展性。这里可以举个例子,比如声明时使用的是动物类,调用时传递的是一个猫类(动物类的子类)的对象,具体执行父类里动物——吃的方法时,实际执行的是猫——吃的方法。

最新文章

  1. jQuery判断当前元素显示状态并控制元素的显示与隐藏
  2. 从svn检出项目---------不是web项目
  3. ORA-10456:cannot open standby database;media recovery session may be in process
  4. hdoj (1162) 最小生成树
  5. Java学习笔记---继承和super的用法
  6. android代码控制seekbar的样式
  7. Spring学习之路一
  8. [Note] 计算机网络的应用层
  9. 神经网络MPLClassifier分类
  10. spring-boot-starter大力出奇迹
  11. LOJ2557. 「CTSC2018」组合数问题
  12. emwin之基于某个事件或标志创建某个界面的一种方法
  13. Spring Boot系列——如何集成Log4j2
  14. QQ浏览器兼容模式问题
  15. 解决应用商店错误代码0x80072efd、0x80131505的方法
  16. 51nod 1258 序列求和 V4
  17. java回文算法
  18. Remove Duplicates from Sorted List leetcode java
  19. 如何对react进行性能优化
  20. 【Windows使用笔记】神舟笔记本的control center

热门文章

  1. js获取当前浏览器地址栏的链接,然后在链接后面加参数
  2. zTree实现地市县三级级联数据库映射
  3. shiro的登陆认证(shiro项目中来的一)
  4. val(),text(),html()的区别
  5. 【转载】 Spark性能优化:资源调优篇
  6. 【BZOJ1030】文本生成器(AC自动机,动态规划)
  7. [CodeVS2370] 小机房的树 (LCA, 树链剖分, LCT)
  8. 金三银四,2018最新iOS面试题,由它可以搞定面试官?
  9. Redis之Zset
  10. jquery切换