7.对象的属性可以是另外一个对象或对象的参考   
通过这种方法可以迅速构建一个比较大的系统。

class Motor {
    Light[] lights;
    Handle left, right;
    KickStart ks;
    Motor() {
        lights = new Light[2];
        lights[0] = new Light();
        lights[1] = new Light();
        left = new Handle();
        right = new Handle();
        ks=new KickStart();
    }
}

class Handle {
    Grip grip;//grip中文是把套的意思
    Handle() {
        grip = new Grip();
    }
    void turnLeft() {
        System.out.println("左转车把....");
    }
}

class Light {
    void turnon() {
        System.out.println("开灯.....");
    }
}
class KickStart {
    void kick() {
        System.out.println("踹一脚,启动.........");
    }
}
class Grip {
    void rollup() {
        System.out.println("往上转一下把套,发动.........");
    }
}

public class Test {
    public static void main(String[] args) {
        Motor myMotor = new Motor();
        System.out.println("夜间启动摩托车的步骤");
        for(int i=0;i<2;i++) myMotor.lights[i].turnon();  
        myMotor.left.grip.rollup();
        myMotor.ks.kick();
    }
}

更多内容请见原文,原文转载自:https://blog.csdn.net/qq_44639795/article/details/103125656

java中对象属性可以是另外一个对象或对象的参考的更多相关文章

  1. java中静态属性和和静态方法的继承问题 以及多态的实质

    首先结论是:java中静态属性和和静态方法可以被继承,但是没有被重写(overwrite)而是被隐藏. 静态方法和属性是属于类的,调用的时候直接通过类名.方法名完成的,不需继承机制就可以调用如果子类里 ...

  2. Java中的属性与字段的区别

    Java中属性和字段的区别  Java中的属性,通常可以理解为其属名性时根据get和set方法名得出的. 其规则是:去掉get或set后其剩余的字符串,如果第二个字母是小写的,则把第一个字母也变成小写 ...

  3. java中,方法可以访问他的类对象的任何私有特性

    java中,方法可以访问他的类对象的任何私有特性 读一本书(Core Java for the Impatient)时,发现这个注意,以前的时候没有在意,今天仔细想想发现记忆不深刻.记录一下 下面代码 ...

  4. Java中反射机制和Class.forName、实例对象.class(属性)、实例对象getClass()的区别

    一.Java的反射机制   每个Java程序执行前都必须经过编译.加载.连接.和初始化这几个阶段,后三个阶段如下图:   其中

  5. Java中net.sf.json包关于JSON与对象互转的问题

    在Web开发过程中离不开数据的交互,这就需要规定交互数据的相关格式,以便数据在客户端与服务器之间进行传递.数据的格式通常有2种:1.xml:2.JSON.通常来说都是使用JSON来传递数据.本文正是介 ...

  6. Java中net.sf.json包关于JSON与对象互转的坑

    在Web开发过程中离不开数据的交互,这就需要规定交互数据的相关格式,以便数据在客户端与服务器之间进行传递.数据的格式通常有2种:1.xml:2.JSON.通常来说都是使用JSON来传递数据.本文正是介 ...

  7. java中方法的参数传递机制_一个对象被当作参数传递到一个方法后

    一个例子: 在Boy.java类中 在Girl.java类中      在marry方法中的this指的是这个方法所属的对象的引用,在这里指的是girl这个对象 在BoyGirlTest.java测试 ...

  8. c#判断两个对象和对象中的属性是否相同(以及记录对象中的哪些字段,和详细的改变情况)

    当前项目需要记录变更记录,即用户在进行编辑后,将变更操作记录下来.但是数据没有发生变化,则不记录. 代码1:(仅仅返回是否变化的标识) /// <summary> /// 反射对比实体属性 ...

  9. Java中系统属性Properties介绍 System.getProperty()参数大全

       在JDK文档中System类中有这样的方法getProperties()在此方法的详细介绍中有下面的参数可供使用: java.version Java 运行时环境版本 java.vendor J ...

随机推荐

  1. think php 公共目录common.php json封装

    <?php function getJsonData($code,$massage,$data){ $result=[ 'code'=>$code, 'massage'=>$mass ...

  2. VMWare ESXi 6.0如何复制虚拟机

    1.复制前建议将待复制的虚拟机电源关闭. 2.登录ESXi 6.0主机后,点击"配置"选项卡,再点击"存储器". 3.能看得相关的数据存储,然后右键点击存储器如 ...

  3. os模块——关于在程序框中如何进行文件的查找和建立新的文件夹

  4. [源码解析] TensorFlow 分布式环境(1) --- 总体架构

    [源码解析] TensorFlow 分布式环境(1) --- 总体架构 目录 [源码解析] TensorFlow 分布式环境(1) --- 总体架构 1. 总体架构 1.1 集群角度 1.1.1 概念 ...

  5. 34 异常机制 异常体系结构 Java把异常当做对象来处理 并定义一个基类java.lang.Throwable作为所有异常的超类 Error Exception

    异常体系结构 概念 Java把异常当做对象来处理,并定义一个基类java.lang.Throwable作为所有异常的超类. 在Java API中已经定义了许多异常类,这些异常类分为两大类,错误Erro ...

  6. Airtest安装与简介

    一:简介 什么是Airtest 网易的airtest其实是个测试套件,由Airtest框架.poco框架.airtestIDE 组成. Airtest框架 基于图像识别的自动化测试框架,是网易自己团队 ...

  7. Net中异步

    同步和异步1.同步是指只启动一个线程2.异步是指同时启动多个线程3.同步方法会卡界面,异步方法不会卡界面 原因:异步方法启动了子线程执行任务,主线程得到释放4.同步方法会慢.异步方法会快 原因:异步启 ...

  8. SQL语句性能优化策略

    1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 WHERE 及 ORDER BY 涉及的列上建立索引.2.应尽量避免在 WHERE 子句中对字段进行 NULL 值判断,创建表时 NULL 是默认 ...

  9. 2022IDEA配置启动lilishop的swagger展示

    目录 一.概述 二.基本构建 三.Git 导入编译器 四.模块描述浅析 五.配置文档 1.注释配置文件 2.添加配置 3.暂时关闭权限 4.浏览器测试访问 5.其他需要修改模块 六.参考文献 结语 一 ...

  10. .Net Core 实现账户充值,还款,用户登录(WebApi的安全)

    个人未开通网站: http://justin1107.pc.evyundata.cn/vip_justin1107.html Api using System; using System.Collec ...