`
jiangduxi
  • 浏览: 458672 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

java面向对象思维之继承 组合

 
阅读更多
  在面向对象语言里面最经常就听到继承这个感念。也许因为是面向对象的原因吧!因为你最可能从实际生活中找出继承这个相关的关系。比如你某天从你父亲那里继承了一大笔钱。高兴吧!这里也出现了继承。难道这个继承概念和面向对象的继承概念一样吗?我认为在某种程度上你可以这么认为。那么我们来看看这个现实中继承的含义吧! 你为什么能够从你父亲那里继承一大笔钱呢?你会说因为他是我的父亲。没错。但是真正的话是因为你和你父亲有别人没有的关系。这种关系是父子关系。正因为这个关系才让你继承有意义。现在回到面向对象思维中的继承
它思维是父类中有一些或者全部的数据和行为可以通过继承关系让子类拥有。这个方向是单向的。也就是说如果A类是B类的父类的话,那么A类对应的某些或者全部数据和行为可以再B类中得到使用。(这里暂时不去详细考虑访问权限)。如果B类继承A类只是覆盖A类的方法。那么就意味着A类和B类是完全相同的类型。这个B类的对象就可以完全替代A类的对象。反之在B类中新增了接口或者叫扩展了接口那么就是不完全替代,因此父类无法访问新添加的方法。这里主要一个转型的概念。有向上转型和向下转型。向上转型的话可以理解为子类拥有父类的类型。这里随便说下如果你初始化一个子类的时候,其实它会先去将父类初始化,然后在初始化自己。
面向对象思维中的组合
  组合其实也是一种很有意思的关系。这种关系在有些时候使用继承还是组合会让很多程序员困惑。因为继承可谓是面向对象的经典。但是组合则是更灵活。比如一辆车是由发动机,车胎,门等等组成。组合是将多个不同类的对象根据行为进行任意的组合。在这种组合其实也可能包含实现继承关系而得到的行为。某种程度上组合关系达到的行为包含了继承达到的行为。因此经常在使用的时候除非继承关系很明显否则还是使用组合比较好。
分享到:
评论

相关推荐

    java面向对象编程总结

    首先,面向对象的思维模式要求我们分析问题,识别出其中的类和对象,确定它们的属性和方法,以及它们之间的关系。类是具有共同属性和行为的对象的抽象,而对象则是类的具体实例。正确地定义类和对象的关系,可以帮助...

    JAVA面向对象程序设计语言

    **JAVA面向对象程序设计语言** Java是一种广泛使用的高级编程语言,以其面向对象的特性而闻名。面向对象编程(Object-Oriented Programming, OOP)是Java的核心理念,它基于类和对象,允许开发者以更接近人类思维...

    JAVA面向对象基础课件

    总的来说,面向对象编程提供了一种更加接近人类思维的方式来组织和设计软件,使得复杂系统的建模变得更加直观和高效。Java作为一门强大的面向对象语言,其面向对象特性是理解和掌握Java编程的基础。通过深入理解对象...

    面向对象方法学思维导图

    面向对象编程语言,如Java和C++,因具有封装、多态和继承等特性而被广泛采用。封装是指隐藏对象的实现细节,对外提供接口;多态是同一个接口使用不同的实例而执行不同操作;继承是建立新类时重用已有的类。 软件...

    《JAVA语言与面向对象程序设计》电子教案(邓丽强)

    总结来看,《JAVA语言与面向对象程序设计》电子教案不仅为学习者提供了全面而深入的Java编程知识,而且注重面向对象思维的培养,让学习者在掌握Java编程技能的同时,能够更好地进行软件设计。无论是初学者,还是有...

    Java类思维导图

    总而言之,"Java思维导图"可能涵盖了这些核心概念,包括但不限于类的定义、继承、接口、访问修饰符、关联关系、聚合与组合、方法以及面向对象的三大原则。通过深入学习这张图,开发者可以更好地理解和应用Java的类...

    Java面向对象设计原则.docx

    "Java面向对象设计原则" Java面向对象设计原则是OOPS(Object-Oriented Programming System,面向对象的程序设计系统)编程的核心。下面我们将详细介绍七大设计原则。 原则1: DRY(Don't repeat yourself) DRY...

    《Java面向对象程序设计》思考题及答案.pdf

    ### Java面向对象程序设计知识点详解 #### 面向对象的开发方法概述 **面向对象的软件开发的优点:** 1. **贴近人类自然思维方式:** 面向对象的方法将软件视为不同对象的集合,这种组织方式更加符合人类对现实...

    java面对对象课件

    ### Java面向对象编程知识点解析 #### 一、面向对象编程概览 面向对象(Object-Oriented, OO)是一种重要的编程范式,它强调通过“对象”来组织代码和数据。面向对象编程的主要目的是提高代码的复用性、灵活性以及可...

    Java面向对象技术导论之SWING图形用户界面设计.ppt

    Java 面向对象技术是编程的核心概念之一,它允许我们以更加符合人类思维的方式组织和处理代码。在Java中,面向对象主要体现在类、对象、封装、继承和多态等方面。当我们谈论Java的图形用户界面(GUI)设计时,特别是...

    03java面向对象思想[归纳].pdf

    面向对象思想是软件开发中的核心概念,特别是在Java这样的面向对象编程语言中。它与传统的面向过程设计思想有着显著的区别。面向对象设计强调的是问题域中的对象和类,以及它们之间的关系,而不是关注解决问题的具体...

    pku面向对象高级教程

    这门课程聚焦于深入理解和应用面向对象技术,旨在提升学员在软件开发中的面向对象思维和实践能力。作为软件学院的核心课程,它涵盖了从理论到实践的全面内容。 在面向对象编程的世界里,"类"是核心概念之一。在文件...

    JAVA教程 第三讲 Java语言中的面向对象特性

    ### JAVA教程 第三讲 Java语言中的面向对象特性 #### 一、面向对象技术...Java语言通过强大的面向对象特性和简洁的语法,成为软件开发领域的重要工具之一。掌握面向对象编程的概念和技术对于Java开发者来说至关重要。

    面向对象思想的另一种注解...(比较幽默).txt

    从给定的信息来看,虽然原文似乎是使用了一些非标准或难以辨认的文字组合,但我们可以尝试根据标题、描述以及部分可识别的关键字来构建一个关于面向对象思想及其在Java中的应用的相关知识点。 ### 面向对象思想的另...

    大学java课件序论面向对象的概念.ppt

    总的来说,面向对象编程提供了一种强大且灵活的软件设计方法,它允许我们以更接近人类思维方式的方式来构建和组织代码,提高了代码的可读性和可维护性。在Java等面向对象语言中,理解和掌握这些基本概念对于高效编程...

    修练8年C++面向对象程序设计之体会

    ### C++面向对象程序设计之体会 #### 一、引言 本文作者通过分享自己八年来使用C++进行面向对象程序设计的心得体会,探讨了面向对象编程的本质以及如何更好地运用这一编程范式。作者提到,尽管最初学习时能够记住...

    JAVASCRIPT是一门面向对象语言归类.pdf

    对于那些有Java、C++等背景的开发者,适应JavaScript的原型式面向对象需要转变思维方式,认识到原型是实现继承和封装的有效途径,而不仅仅是类的替代品。 总之,JavaScript通过其独特的原型机制,实现了面向对象...

Global site tag (gtag.js) - Google Analytics