Java进阶学习(2)之对象交互(上)
对象交互
- 对象交互
- 对象的识别
- 时钟小程序
- 把现实世界用对象去建模,去分解问题规模,最终抽象成对象和对象的模型
- 例如11:03的小程序,可以抽象成一个显示类,一个类生成两个对象去表示时钟
package com.study; public class Display
{
private int value=0;
private int limit=0; Display(int limit)
{
this.limit=limit;
} public int getValue()
{
return value;
} public void increase()
{
value++;
if(value==limit)
{
value=0;
}
} public static void main(String[] args)
{
Display d=new Display(24);
for(;;)
{
d.increase();
System.out.println(d.getValue());
}
}
}时钟从0到23
- 对象的交互
package com.study; public class Clock
{ private Display hour=new Display(24);
private Display minute=new Display(60); public void start()
{
for(;;)
{
minute.increase();
if(minute.getValue()==0)
{
hour.increase();
}
print(hour.getValue(),minute.getValue());
}
} public void print(int a,int b)
{
System.out.printf("%02d:%02d\n",a,b);
} public static void main(String[] args)
{
// TODO Auto-generated method stub
Clock clock=new Clock();
clock.start(); } }
- 对象的识别
Java进阶学习(2)之对象交互(上)的更多相关文章
- Java进阶学习:将文件上传到七牛云中
Java进阶学习:将文件上传到七牛云中 通过本文,我们将讲述如何利用七牛云官方SDK,将我们的本地文件传输到其存储空间中去. JavaSDK:https://developer.qiniu.com/k ...
- Java进阶学习:log4j的学习和使用
Java进阶学习——log4j的学习和使用 简介Loj4j Log4j的组成 Log4j主要由三大组组件构成: Logger: 负责生成日志,并能够对日志信息进行分类筛选,通俗的讲就是决定什么日志信息 ...
- Java进阶学习(3)之对象容器(上)
对象容器 顺序容器 记事本的例子 UI设计和业务逻辑要分离 接口设计 add(String note); getSize(); getNote(int index); removeNote(index ...
- Java进阶学习(2)之对象交互(下)
访问属性 封闭的访问属性 private等访问权限控制是对类的,这意味着同一类的不同对象可以互相访问其成员 这是从代码层面去考虑的,意味着不同类文件 开放的访问属性 一个类文件就是一个编译单元 pub ...
- Java进阶学习(1)之类与对象(上)
package com.study; //自动售卖机 public class vmachine { private int price = 80; private int balance; priv ...
- Java进阶学习(3)之对象容器.小练习
查找里程(10分) 题目内容: 下图为国内主要城市之间的公路里程: 你的程序要读入这样的一张表,然后,根据输入的两个城市的名称,给出这两个城市之间的里程. 注意:任何两个城市之间的里程都已经给出,不需 ...
- Java进阶学习(3)之对象容器(下)
对象数组 对象数组中的每个元素都是对象的管理者而非对象本身 对象数组的for—each循环 集合容器(HashSet) HashSet 数学中的集合,元素间满足互异性.确定性.无序性 HashSet& ...
- Java进阶学习(1)之类与对象(下)
类与对象 函数与调用 函数是通过对象来调用的 this 是成员函数的特殊的固有的本地变量 它表达了调用这个函数的那个对象 调用函数 通过 . 运算符,调用某个对象的函数 在成员函数内部直接调用自己(t ...
- java学习4-面向对象(上)
1.类和对象 修饰符可以是public.final.abstract或者完全省略这三个修饰符 类名命名规则:每个单词首字母大写,其他字母全部小写,单词与单词之间不使用分隔符 修饰符:可以省略,也可以是 ...
随机推荐
- 基本程序单元Activity
Activity的4种状态,运行状态,暂停状态,停止状态,销毁状态,下面就是生命周期的顺序图 手动创建Activity 1.创建继承自Activity的Activity 2.重写需要的回调方法 3.设 ...
- import 与 from...import
- IText异常 NoClassDefFoundError: org/bouncycastle/asn1/ASN1Encodable
根据Itext的版本,查看依赖库的版本 maven地址:https://mvnrepository.com/artifact/com.itextpdf/itextpdf <dependency& ...
- Mybatis学习笔记——输入参数parameterType、Mybatis调用存储过程
输入参数:parameterType(两种取值符号) 1.类型为简单类型 区别: (1) #{可以为任意值} ${vaue}--->标识符只能是value (2) ...
- cmd命令和快捷键
命令 含义 盘名: 从C盘到其他盘时输入 dir 查看当前文件夹下的内容 cd 目录名称 选择目录 cd.. 退回当前目录的上一级目录 cd\ 回到根目录 md 目录名称 创建目录 rd 目录名称 删 ...
- VS2015+EF+MySql问题
1.出现框架不兼容问题: 解决方法:a.在web.config或者app.config中加入所示代码: b.引用mysqlConnector.net中的所有dll,一般路径在D:\Program Fi ...
- DE1+回顾
本实验使用DE1器件,cyloneV,主要做的基础实验,目的是回顾前期的学习和巩固知识和熟悉操作流程. 视频主要学习的是小梅哥视频. 工程文件夹取名 prj ----- 工程文件存放目录(ip文件 ...
- 解决VS2013报错fopen、sprintf等函数安全的问题
VS2013中使用fopen.sprintf等函数是会出现安全问题: error C4996: 'fopen': This function or variable may be unsafe. Co ...
- C++-POJ3349-Snowflake Snow Snowflakes[STL][set][hash未写]
错误AC解法,sort+set判重,为考虑异构! 比较坑的一点是读入时scanf一定要一次读6个数,不然会TLE #include <set> #include <map> # ...
- Solr与JDK对应版本关系,Tomcat与JDK版本对应关系
最新在部署solrCloud集群,由于自己机器上用的JDK都是JDK1.7的,然后我就从网上下载了最新下载了最先的solr6.6.0和最新的Tomcat9.0,部署了一下,开始报错,提示solr和JD ...