`
wangduowu
  • 浏览: 134441 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

java 继承和组合

    博客分类:
  • java
阅读更多

 

1. “is-a”(是一个)的关系是用继承来表述

2. “has-a”(有一个)的关系是用组合来表述

 

3. 组合语法:

   组合技术通常用于想在新类中使用现有累的功能而非它的接口的情况下。即在新类中放入某个类的对象,让其实现所需要的功能,但是新类的用户看到的只是为新类所定义的接口,而非嵌入类对象的接口。其实组合在编码中是经常用到的。

 

class Engine {
  
      public void start() {}
      public void rev() {}
      public void stop() {}

}

class Wheel {

       public void rollup()

}

public class Car {
        Engine engine = null ;
        Wheel wheel  = null;

        public Car() {

                 engine = new Engine();             //轮胎和引擎是汽车的一部分
                 wheel = new Wheel();
        }
      
}

 

 

4. 组合和继承都允许在新类中放置子对象,组合是显示的这么做,而继承是隐式的做。

 

 

 

 

分享到:
评论

相关推荐

    java中继承和组合中图形的简单类的定义

    ### Java中的继承与组合在图形类定义中的应用 在Java编程语言中,继承与组合是面向对象编程(OOP)的两大核心概念。通过继承,一个类可以从另一个类那里继承属性和方法,从而实现代码的复用;而通过组合,则是在类...

    浅析Java中的继承与组合

    在Java编程语言中,继承和组合是两种主要的面向对象设计原则,它们分别代表了类之间的不同关系。本文将深入探讨这两个概念以及它们在实际编程中的应用和选择。 首先,让我们了解一下继承。继承是Java中一种强大的...

    关于Java中的继承和组合的一个错误使用的例子

    在Java编程中,继承和组合是两种常用的代码复用机制,它们各有特点并适用于不同的场景。这篇文章通过一个错误使用继承和组合的例子,探讨了这两者的区别以及如何避免不当使用带来的问题。 首先,让我们理解什么是...

    《java面向对象程序设计-继承和多态》教案.doc

    面向对象编程是Java的核心特性,本教程主要涵盖了三个关键概念:封装、继承和多态,以及相关的访问修饰符和方法修饰符。 封装是面向对象编程的基础,它涉及到将数据(属性)和操作这些数据的方法(行为)组合在一个...

    如何在Java中消除实现继承和面向接口编程

    本文将深入探讨如何在Java中合理地消除实现继承和面向接口编程中的不当用法,以提高代码的可读性、可维护性和灵活性。 ### 1. 避免过度使用继承 继承在OOP中被用于表示“is-a”关系,即一个类是另一个类的一种特殊...

    Java中类的组合概念

    类的组合与继承不同,它是通过在类定义中嵌入其他类的实例来实现的,这种方式有助于提高代码的可重用性和模块化。 首先,我们来理解Java中类的概念。类是面向对象编程的基本单位,它定义了一组属性(成员变量)和...

    java继承.pdf

    ### Java继承:面向对象编程的核心概念 #### 引言 在Java编程中,**继承**是一种关键机制,它允许创建的新类(子类)继承现有类(父类)的属性和方法,从而实现代码的复用和扩展。本文将深入探讨Java继承的基本...

    java中慎用继承 以及java中的stack的败笔

    然而,如同任何技术一样,Java在设计过程中也存在一些争议和值得探讨的问题,其中之一便是继承的使用。本文将深入讨论Java中继承的优缺点,以及在特定情况下如何避免使用继承,同时探讨`java.util.Stack`类的设计...

    java编写的组合模式例子,建造一个工厂

    通过本案例的学习,我们可以了解到组合模式如何帮助我们在Java中构建层次化的组织结构,并且能够以统一的方式处理单个对象和复合对象。这种方式不仅提高了代码的可扩展性和可维护性,还使得程序结构更加清晰明了。

    java的继承总结.doc

    下面将对Java继承的基本概念、语法格式、继承关系、方法重写、自动转型等进行详细的总结和分析。 一、继承的基本概念 继承是特殊的is-a关系,即子类继承父类,说明子类是一种特殊的父类,并且具有父类所不具有的...

    java组合的算法

    组合模式的核心思想是"has-a"关系,即一个对象包含其他对象,这与继承的"is-a"关系不同。在Java中,我们通常通过接口或抽象类来定义共同的行为,然后由具体类实现这些行为,从而实现部分与整体的解耦。 首先,让...

    【Android进阶】(1)用继承和组合方式自定义控件

    本教程主要探讨如何通过继承和组合的方式来自定义控件,适用于已经有一定Android基础的开发者进行进阶学习。 首先,我们来理解自定义控件的两种基本方法:继承和组合。 1. **继承**: - **基础概念**:在Java或...

    Java语言程序设计:第四章 继承与多态.ppt

    在Java编程语言中,继承和多态是面向对象编程的核心概念,它们极大地提高了代码的复用性和灵活性。在第四章“继承与多态”中,我们深入探讨了这两个主题。 首先,继承允许一个类(子类)从另一个类(父类)继承特性...

    java类的继承详解说明

    Java 类的继承详解说明 Java语言中,继承是面向对象编程的三大特征之一,是一种实现代码复用...继承是指子类继承父类的成员变量和方法,而组合是指一个类包含另一个类的对象。继承更应该叫做扩展,关键字是 extends。

    java script 继承的实现

    6. **寄生组合式继承**:结合了寄生式继承和组合继承,被认为是 JavaScript 中最理想的继承方式。它通过寄生方式复制父类构造函数的属性,然后使用组合继承来设置子类的原型。 在 "zinherit.js" 文件中,可能实现了...

    daima.zip_java 继承 银行

    总的来说,"daima.zip"中的代码示例可能展示了如何利用Java的继承和类的组合来构建一个银行系统。通过这种方式,开发者可以构建出层次清晰、功能丰富的代码结构,便于理解和维护,同时满足业务需求的扩展。通过学习...

    Java设计一个银行帐户类(继承与多态)

    在Java编程中,设计一个银行账户类是学习面向对象编程的一个常见练习,它涉及到类的定义、对象的创建以及继承和多态的概念。在这个实验中,我们创建了一个名为`BankCount`的类来代表银行账户,并包含了一系列与账户...

    Java继承机制详解:构建可复用的代码架构

    继承是Java中实现代码复用和建立类层次结构的重要机制。通过继承,我们可以创建新的类,这些类继承了父类的属性和方法,同时还可以提供特定...通过理解继承、组合和多态性,我们可以构建出更加灵活、可维护的代码架构。

    java实现计算圆锥体的表面积和体积(实验文档)

    Java 实现计算圆锥体的表面积和体积 Java 是一种面向对象的编程语言,广泛应用...本文详细介绍了如何使用 Java 实现计算圆锥体的表面积和体积,包括 Java 中的接口和实现、包机制、继承和多态、常用包和关键字等内容。

    关于两点三点的坐标描述Java Eclipse 继承的练习

    这时候,你可以通过继承、组合和多态等面向对象的编程技巧来构建更复杂的结构和算法。 总结来说,这个练习主要涉及了以下几个知识点: 1. 坐标系统的概念和表示。 2. Java类的定义和实例化。 3. 类的继承和多态性。...

Global site tag (gtag.js) - Google Analytics