java中对象属性可以是另外一个对象或对象的参考

2023-10-29

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();
    }
}

更多请见:http://www.mark-to-win.com/tutorial/java_2_PropertyIsObjectOrReference.html

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

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

  • Java - 将无符号十六进制字符串解析为有符号长整型

    我有一堆十六进制字符串 其中之一是 d1bc4f7154ac9edb 这是 3333702275990511909 的十六进制值 如果执行 Long toHexString d1bc4f7154ac9edb 这与您得到的十六进制相同 现在
  • 在Java Servlet中获取通过jquery ajax发送的参数[重复]

    这个问题在这里已经有答案了 我在网上搜索这个主题 但找不到有效的示例 我会很高兴有人能给我帮助 这就是我测试的 ajax url GetJson type POST dataType json contentType application
  • 使用 TLS PSK 加密时如何正确检测流结束?

    我已经准备好了一个简单的 TLS PSK 客户端测试用例 https github com afarber jetty newbie tree master TlsPskClient2 src main java de afarber tl
  • 如何将webview内容划分为多个页面

    我必须使用 Android 上的 PdfDocument 从 webView 创建 PDF https developer android com reference android graphics pdf PdfDocument htm
  • openFileOutput 在单例类中无法正常工作 - 想法/解决方法?

    作为一名 Android 开发新手 我遇到了一些奇怪的问题 我想创建一个类 它方法其他类 活动 任何可以用于以某种特殊方式处理文件的类 假设为了简单起见 我们将记录一些内容 如果我在活动中执行以下操作 例如在 OnClick 侦听器中 则一
  • Selector.close() 是否关闭所有客户端套接字?

    我是 nio 套接字的新手 我已经使用 nio 套接字编写了一个服务器 现在我正在尝试编写关闭钩子以确保通过清理资源正常退出 我的问题是Selector close 方法关闭所有客户端套接字 如果没有 请告诉我如何访问所有客户端套接字 而无
  • Spring 从 JBoss 上下文加载 PropertySourcesPlaceholderConfigurer

    我有一个使用 PropertySourcesPlaceholderConfigurer 的 spring 3 1 应用程序加载设置 我想管理测试和生产环境 只需从服务器上下文加载设置覆盖本地文件属性中指定的设置 下一个示例在 Tomcat
  • 如何在正则表达式中编写可选单词?

    我想编写一个识别以下模式的 java 正则表达式 abc def the ghi and abc def ghi 我试过这个 abc def the ghi 但是 它没有识别第二种模式 我哪里出错了 abc def the ghi 删除多余
  • 是否可以使用 Apache Tika 提取表信息?

    我正在寻找 pdf 和 MS Office 文档格式的解析器 以从文件中提取表格信息 当我看到 Apache Tika 时 正在考虑编写单独的实现 我能够从任何这些文件格式中提取全文 但我的要求是提取表格数据 我希望有 2 列采用键值格式
  • 如何使用 aether 从 Java 找到最新版本的 Maven 工件?

    他们的文档非常薄弱 我无法弄清楚 我找到了部分答案here https stackoverflow com questions 27428068 how to retrieve the latest also snapshot versio
  • JFrame 在连续运行代码时冻结

    我在使用时遇到问题JFrame 它会冻结 连续运行代码 下面是我的代码 点击时btnRun 我调用了该函数MainLoop ActionListener btnRun Click new ActionListener Override pu
  • BigDecimal汇总统计

    我有一个 BigDecimal 列表 List
  • 为 REST API 生成 Swagger UI 文档

    我使用 Java 中的 JAX RS Jersey 开发了 REST API 我想为其转换 生成基于 Swagger 的 UI 文档 谁能以简单的方式告诉我如何做到这一点的精确 步骤 很抱歉 他们网站上给出的步骤对我来说有点模糊 有多种方法
  • 添加 char 和 int

    据我了解 字符是一个字符 即一个字母 一个digit 标点符号 制表符 空格或类似的东西 因此 当我这样做时 char c 1 System out println c 输出 1 正是我所期望的 那么为什么当我这样做时 int a 1 ch
  • 向Java类库添加函数

    我使用的 Java 类库在很多方面都不完整 有很多类我认为应该内置其他成员函数 但是 我不确定添加这些成员函数的最佳实践 让我们调用不足的基类A class A public A long arbitrary arguments publi
  • 如何使用 AffineTransform.quadrantRotate 旋转位图?

    我想旋转一个bitmap关于它的中心点 然后将其绘制成更大的图形上下文 位图是40x40 pixels 图形上下文是500x500 pixels 这就是我正在做的 BufferedImage bi new BufferedImage 500
  • log4j.properties 在 Wildfly 上无法正常工作

    我的类路径中有一个 log4j properties 文件 它位于 APP XX jar log4j properties 位置 我注意到在ear文件中我还可以在lib文件夹中找到log4j 1 2 17 jar 但无论我在 log4j p
  • 如果 Modelmapper 中的整个属性为空,如何排除它们

    ModelMapper 是否 http modelmapper org http modelmapper org 支持什么排除属性 如果该值为空 我刚刚找到了 PropertyMap 但这对我来说是一种限制 因为我必须描述我想要的特定属性
  • 如何更改 JAX-WS Web 服务的地址位置

    我们目前已经公开了具有以下 URL 的 JAX RPC Web 服务 http xx xx xx xx myservice MYGatewaySoapHttpPort wsdl http xx xx xx xx myservice MYGa
  • FragmentMap + ActionBar 选项卡

    我一直在尝试插入一个MapView进入一个ActionBar Tab 但我什至无法解决问题 即使谷歌搜索 这是主要活动 Override public void onCreate Bundle savedInstanceState supe

随机推荐

  • JavaScript 算法系列---动态规划

    很久之前接触过这样一道题目 总共有十层阶梯 从1层开始往上爬 每次可以上1层或者2层 问到10层总共有多少种方法 思路 这个问题就是动态规划的一个经典例子 所谓动态规划 就是把复杂的问题进行拆解 拆解成一个个子问题 而这类问题最后非常适合使
  • C++ 学习之内建函数对象 - 算术仿函数(加减乘除、取反、取余)

    算数仿函数原型 template
  • 自定义图标iconfont

    阿里iconfont的使用 ui切好图上传到蓝狐 我们下载svg格式的图片 登陆iconfont官网 然后将自己取的iconfont的昵称也就是用户名给你们负责人说 叫他把你拉入图标管理库 这样才能共同开发 全部人各自定义自己的图标 不冲突
  • MySQL实操(四)——使用Haproxy+keeplived实现Mycat高可用

    MySQL实操系列 MySQL实操 一 CentOS7安装MySQL5 7及基础配置 DreamEhome的博客 CSDN博客 centos7 中安装mysql5 7配置表名忽略大小写 MySQL实操 二 MySQL主从同步实战 Dream
  • Labview操作串口-----------通过VISA驱动

    本篇文章将会详细介绍如何通过labview的VISA驱动模块来操作PC的串口 基于LABVIEW2012 VISA530full exe 1 首先需要安装LABVIEW 接下里安装VISA530驱动模块 否则编译本代码时会出现缺少VISA驱
  • STM32 四轴无人机设计——PPM控制无人机动作

    1 前言 前面两次我们成功的将PPM信号的读取 储存和油门处理完成了 这次我们要开始真正的控制无人机 首先我们要了解无人机前后 左右 旋转 升降的原理 2 动作原理 引用 https blog csdn net weixin 3570379
  • flutter get 命令行工具

    mac终端执行 flutter pub global activate get cli 这个安装完以后会提示英文提示你要把一个 目录添加到mac环境变量中 下面的目录是你安装完以后提示你放到环境变量里的目录 export PATH PATH
  • [MacOs]用外置硬盘制作MacOs系统盘

    文章目录 背景 设备 步骤 下载指定系统 制作启动盘 安装系统 背景 最近我的mac air出了点问题 经检查应该是硬盘问题 由于最近得待在老家没办法维修又需要用 只能用外置的硬盘做个系统盘来将就一下使用 设备 需要两个存储设备 不小于32
  • 马上:头疼:安卓黑屏,白屏,网卡,sdcard挂载等问题深入分析解决

    白屏 设备一段时间使用后 白屏 需要重启 经线上日志和以下相关代码初步分析是AMS 窗口显示问题 检查相关业务代码 发现Activity有可能被finish多次 导致失败 还有多次startActivity if isFinishing r
  • MySQL数据库误删回滚

    某次一不小心 用了delete from xxx 删除了几条重要数据 在网上找了很多方法 但都比较零散 打算记录本次数据找回的过程 大致分为以下几步 1 查看binlog是否开启 log bin是ON 就说明打开了 OFF就是关闭状态 以下
  • linux查看nginx安装路径

    linux查看nginx安装路径 有几种方法可以查看nginx的安装路径 使用which命令 which nginx 这个命令会返回nginx的二进制文件路径 一般也是安装路径 查看nginx的进程 得到安装路径 ps aux grep n
  • python爬虫高级教程,JS逆向之百度翻译

    环境 python版本号 系统 游览器 python 3 7 2 win7 google chrome 关于本文 本文将会通过爬虫的方式实现简单的百度翻译 本文中的代码只供学习 不允许作为于商务作用 商务作用请前往api fanyi bai
  • 浅谈控制反转(IoC)

    Inversion of Control 什么是控制反转 程序的流程控制权相对于传统的面向过程编程而言发生了反转 下面是维基百科的描述 In software engineering inversion of control IoC is
  • jest测试ajax,搭建Jest前端测试框架总结

    先说一下我要使用Jest的原因 由于开发提测了一个js的公共组件 需要测试人员对此组件的功能进行测试 因为提测的直接就是js文件 所以我们也就只能对其中的方法进行类白盒测试 知道了为什么测 那接下来就是怎么测 很容易的想到了需要一个测试框架
  • 60-200-040-使用-命令-MySQL查看引擎的命令

    文章目录 1 查看存储引擎 2 MySAM 和 InnoDB对比 1 查看存储引擎 mysql gt show ENGINES Engine Support
  • 调制与解调(1)——初认识

    在深入项目前 还需要对调制解调做深入学习 1 基本概念 调制 调制就是使一个信号 如光 高频电磁振荡等 的某些参数 如振幅 频率等 按照另一个欲传输的信号 如声音 图像等 的特点变化的过程 调制是通过改变高频载波的幅度 相位或者频率 使其随
  • 基于VS2019配置opencv4.0

    文章目录 1 前言 2 不说废话 直接上图干净利落 2 1 创建新空白项目 2 2 添加一个主文件 2 3 配置opencv环境 2 4 链接器配置 2 5 将opencv添加到计算机环境中 2 6 文件复制 3 运行测试环境 1 前言 不
  • 安信可SX1278LORA通讯试验

    LoRa 的名字是远距离无线电 Long Range Radio 作为一种线性调频扩频的调制技术 最早由法 国几位年轻人创立的一家创业公司 Cycleo 推出 2012 年 Semtech 收购了这家公司 并将这一调制技术 封装到芯片中 基
  • 3D游戏第八次作业

    3D游戏第八次作业 一 简单粒子制作 按参考资源要求 制作一个粒子系统 参考资源 使用 3 3 节介绍 用代码控制使之在不同场景下效果不一样 1 模拟烟花发射 效果展示 实现 给空对象挂载一个名为moveup的粒子系统模拟烟花发射 Emis
  • java中对象属性可以是另外一个对象或对象的参考

    7 对象的属性可以是另外一个对象或对象的参考 通过这种方法可以迅速构建一个比较大的系统 class Motor Light lights Handle left right KickStart ks Motor lights new Lig