对象交互

  • 对象交互

    • 对象的识别

      • 时钟小程序
      • 把现实世界用对象去建模,去分解问题规模,最终抽象成对象和对象的模型
      • 例如11:03的小程序,可以抽象成一个显示类,一个类生成两个对象去表示时钟
        1. package com.study;
        2.  
        3. public class Display
        4. {
        5. private int value=0;
        6. private int limit=0;
        7.  
        8. Display(int limit)
        9. {
        10. this.limit=limit;
        11. }
        12.  
        13. public int getValue()
        14. {
        15. return value;
        16. }
        17.  
        18. public void increase()
        19. {
        20. value++;
        21. if(value==limit)
        22. {
        23. value=0;
        24. }
        25. }
        26.  
        27. public static void main(String[] args)
        28. {
        29. Display d=new Display(24);
        30. for(;;)
        31. {
        32. d.increase();
        33. System.out.println(d.getValue());
        34. }
        35. }
        36. }

        时钟从0到23

    • 对象的交互
      1. package com.study;
      2.  
      3. public class Clock
      4. {
      5.  
      6. private Display hour=new Display(24);
      7. private Display minute=new Display(60);
      8.  
      9. public void start()
      10. {
      11. for(;;)
      12. {
      13. minute.increase();
      14. if(minute.getValue()==0)
      15. {
      16. hour.increase();
      17. }
      18. print(hour.getValue(),minute.getValue());
      19. }
      20. }
      21.  
      22. public void print(int a,int b)
      23. {
      24. System.out.printf("%02d:%02d\n",a,b);
      25. }
      26.  
      27. public static void main(String[] args)
      28. {
      29. // TODO Auto-generated method stub
      30. Clock clock=new Clock();
      31. clock.start();
      32.  
      33. }
      34.  
      35. }

Java进阶学习(2)之对象交互(上)的更多相关文章

  1. Java进阶学习:将文件上传到七牛云中

    Java进阶学习:将文件上传到七牛云中 通过本文,我们将讲述如何利用七牛云官方SDK,将我们的本地文件传输到其存储空间中去. JavaSDK:https://developer.qiniu.com/k ...

  2. Java进阶学习:log4j的学习和使用

    Java进阶学习——log4j的学习和使用 简介Loj4j Log4j的组成 Log4j主要由三大组组件构成: Logger: 负责生成日志,并能够对日志信息进行分类筛选,通俗的讲就是决定什么日志信息 ...

  3. Java进阶学习(3)之对象容器(上)

    对象容器 顺序容器 记事本的例子 UI设计和业务逻辑要分离 接口设计 add(String note); getSize(); getNote(int index); removeNote(index ...

  4. Java进阶学习(2)之对象交互(下)

    访问属性 封闭的访问属性 private等访问权限控制是对类的,这意味着同一类的不同对象可以互相访问其成员 这是从代码层面去考虑的,意味着不同类文件 开放的访问属性 一个类文件就是一个编译单元 pub ...

  5. Java进阶学习(1)之类与对象(上)

    package com.study; //自动售卖机 public class vmachine { private int price = 80; private int balance; priv ...

  6. Java进阶学习(3)之对象容器.小练习

    查找里程(10分) 题目内容: 下图为国内主要城市之间的公路里程: 你的程序要读入这样的一张表,然后,根据输入的两个城市的名称,给出这两个城市之间的里程. 注意:任何两个城市之间的里程都已经给出,不需 ...

  7. Java进阶学习(3)之对象容器(下)

    对象数组 对象数组中的每个元素都是对象的管理者而非对象本身 对象数组的for—each循环 集合容器(HashSet) HashSet 数学中的集合,元素间满足互异性.确定性.无序性 HashSet& ...

  8. Java进阶学习(1)之类与对象(下)

    类与对象 函数与调用 函数是通过对象来调用的 this 是成员函数的特殊的固有的本地变量 它表达了调用这个函数的那个对象 调用函数 通过 . 运算符,调用某个对象的函数 在成员函数内部直接调用自己(t ...

  9. java学习4-面向对象(上)

    1.类和对象 修饰符可以是public.final.abstract或者完全省略这三个修饰符 类名命名规则:每个单词首字母大写,其他字母全部小写,单词与单词之间不使用分隔符 修饰符:可以省略,也可以是 ...

随机推荐

  1. 随机数模块random_python

    一.随机数模块random 1.常用的几个方法: import randomprint(random.random()) #(0,1)之间的随机数字,如0.6772275352932792print( ...

  2. Mike and strings

    Mike has n strings s1, s2, ..., sn each consisting of lowercase English letters. In one move he can ...

  3. oneshot和周期性shot

    计数器的使用,oneshot:时刻. 有误差,日.每一些间隔可以产生周期性shot(多个持续性时刻)

  4. .net 文件接口的封装,写日志,创建文件log

    public class FileSupport { public static FileSupport Instance = new FileSupport(); public static str ...

  5. 【蓝桥杯/算法训练】Sticks 剪枝算法

    剪枝算法 大概理解是通过分析问题,发现一些判断条件,避免不必要的搜索.通常应用在DFS 和 BFS 搜索算法中:剪枝策略就是寻找过滤条件,提前减少不必要的搜索路径. 问题描述 George took ...

  6. mysql之路4

    MYSQL之约束 2.主键约束 349行cnname换成cname

  7. awk从放弃到入门(2):awk分隔符

    一.awk分隔符 awk的默认分割符是空格,但是,这样描述并不精确,因为,awk的分隔符还分为两种,"输入分隔符" 和 "输出分隔符" . (1)输入分隔符:英 ...

  8. Python记:通用的序列操作之成员资格(听起来倒是有些抽象的!)

    ______________________________永远守护这一尘不染的真心! 要检查特定的值是否包含在序列中,可使用运算符in.它检查是否满足指定的条件,并返回相应的值:满足时返回True, ...

  9. GOM引擎脚本 时间段内调整人物属性

    功能: 调整人物属性 格式: ChangeHumAbility 属性(1-20) 操作符(+ = -) 效果(1-65535) 时间秒说明: 属性1-12分别对应人物 防御下限 防御上限 魔御下限 魔 ...

  10. bootstrap中响应式表格失灵

    当宽度小于768px,由于表格的内容不能填充到出现横向滚动条 单元格内容不够: 出现横向滚动条