Java进阶学习(2)之对象交互(下)
- 访问属性
- 封闭的访问属性
- private等访问权限控制是对类的,这意味着同一类的不同对象可以互相访问其成员
- 这是从代码层面去考虑的,意味着不同类文件
- 开放的访问属性
- 一个类文件就是一个编译单元
- public class可以在不同包不同类进行访问
- 没有任何访问控制权限的class只能在同一包里进行访问
- 封闭的访问属性
- 包
- 包名的 . 代表文件夹系统中文件的层次
- JVM自动生成的构造函数访问权限是Public
- 例如com.mieba.servlet和com.mieba.dao
- 文件夹层次为
- src
- com
- mieba
- servlet
- dao
- mieba
- com
- src
- 文件夹层次为
- 类变量
- 类变量
- 属于类,不属于对象
- 两种访问方式:class.变量 object.变量
- 类函数
- 类函数里只能访问类函数和类变量
- 类变量
- 测验和作业
- 有秒计时的数字时钟
package com.study; import java.util.Scanner; public class Main
{ public static void main(String[] args)
{
java.util.Scanner in = new java.util.Scanner(System.in);
Clock clock = new Clock(in.nextInt(), in.nextInt(), in.nextInt());
clock.tick();
System.out.println(clock.toString());
in.close();
} } class Display
{
private int value = 0;
private int limit = 0; public Display(int limit)
{
this.limit = limit;
} public int getValue()
{
return value;
} public void setValue(int value)
{
this.value = value;
} public void increase()
{
value++;
if (value == limit)
{
value = 0;
}
} } class Clock
{ private Display hour = new Display(24);
private Display minute = new Display(60);
private Display second = new Display(60); public Clock(int hour, int minute, int second)
{
if(hour<24&&minute<60&&second<60)
{
this.hour.setValue(hour);
this.minute.setValue(minute);
this.second.setValue(second);
}
else
{
System.out.println("输入有误,程序结束");
}
} public String toString()
{
String hour = String.format("%02d", this.hour.getValue());
String minute = String.format("%02d", this.minute.getValue());
String second = String.format("%02d", this.second.getValue());
return (hour+":"+minute+":"+second);
} public void tick()
{
second.increase();
if (second.getValue() == 0)
{
minute.increase();
if (minute.getValue() == 0)
{
hour.increase();
}
} } }运行结果

- 访问属性
Java进阶学习(2)之对象交互(下)的更多相关文章
- Java进阶学习:将文件上传到七牛云中
Java进阶学习:将文件上传到七牛云中 通过本文,我们将讲述如何利用七牛云官方SDK,将我们的本地文件传输到其存储空间中去. JavaSDK:https://developer.qiniu.com/k ...
- Java进阶学习:log4j的学习和使用
Java进阶学习——log4j的学习和使用 简介Loj4j Log4j的组成 Log4j主要由三大组组件构成: Logger: 负责生成日志,并能够对日志信息进行分类筛选,通俗的讲就是决定什么日志信息 ...
- Java进阶学习(2)之对象交互(上)
对象交互 对象交互 对象的识别 时钟小程序 把现实世界用对象去建模,去分解问题规模,最终抽象成对象和对象的模型 例如11:03的小程序,可以抽象成一个显示类,一个类生成两个对象去表示时钟 packag ...
- Java进阶学习(3)之对象容器(下)
对象数组 对象数组中的每个元素都是对象的管理者而非对象本身 对象数组的for—each循环 集合容器(HashSet) HashSet 数学中的集合,元素间满足互异性.确定性.无序性 HashSet& ...
- Java进阶学习(1)之类与对象(下)
类与对象 函数与调用 函数是通过对象来调用的 this 是成员函数的特殊的固有的本地变量 它表达了调用这个函数的那个对象 调用函数 通过 . 运算符,调用某个对象的函数 在成员函数内部直接调用自己(t ...
- Java进阶学习(4)之继承与多态(下)
多态变量和向上造型 多态变量 子类和子类型 类定义了类型 子类定义了子类型 子类的对象可以被当作父类的对象来使用 赋值给父类的变量 传递给需要父类对象的函数 放进存放父类对象的容器里 多态变量 Jav ...
- Java进阶学习(3)之对象容器.小练习
查找里程(10分) 题目内容: 下图为国内主要城市之间的公路里程: 你的程序要读入这样的一张表,然后,根据输入的两个城市的名称,给出这两个城市之间的里程. 注意:任何两个城市之间的里程都已经给出,不需 ...
- Java进阶学习(3)之对象容器(上)
对象容器 顺序容器 记事本的例子 UI设计和业务逻辑要分离 接口设计 add(String note); getSize(); getNote(int index); removeNote(index ...
- Java进阶学习(1)之类与对象(上)
package com.study; //自动售卖机 public class vmachine { private int price = 80; private int balance; priv ...
随机推荐
- 《NVM-Express-1_4-2019.06.10-Ratified》学习笔记(8.20)-- ANA
8.20 非对称namespace访问报告 8.20.1 非对称namespace访问报告概况 非对称Namespace访问(ANA)在如下场景下产生,基于访问这个namespace的controll ...
- c语言修炼之一
1.C项目要高内聚(模块功能必须明确,一个模块完成一个功能).低耦合(接口尽可能简单,减少各模块间的联系). 2.register类型不能为模块间的全局变量.模块内的全局变量.局部static变量.( ...
- 怎么编写API和或者自己不属于知识小案例demo程序
再使用一个函数,进行测试的调用,然后进行调用这样就不需要再为makefile什么,还有就是改什么鬼东西烦恼了. 然后把需要的功能进行分解就行了.
- [一本通学习笔记] AC自动机
AC自动机可以看作是在Trie树上建立了fail指针,在这里可以看作fail链.如果u的fail链指向v,那么v的对应串一定是u对应串在所给定字符串集合的后缀集合中的最长的后缀. 我们考虑一下如何实现 ...
- docker installation and usage
From 一.环境配置的难题 软件开发最大的麻烦事之一,就是环境配置.用户计算机的环境都不相同,你怎么知道自家的软件,能在那些机器跑起来? 用户必须保证两件事:操作系统的设置,各种库和组件的安装.只有 ...
- ORA-00928: missing SELECT keyword
问题描述 ORA-00928: missing SELECT keyword 问题原因 未写表名
- (转)java垃圾回收二
转自:http://shuaijie506.iteye.com/blog/1779651 在网上看到一篇不错的文章,记录下来备忘. 要理解java对象的生命周期,我们需要要明白两个问题, 1.java ...
- qq自己设定动态图像视屏
类似于样但是是自己定义的视屏先上壁纸 这个具体是怎么制作的呢? 先从网络上下载自己喜欢的mp4视屏 qq头像上面点击拍摄动态图像 先随意拍摄2秒保持拍摄完成的状态不要点击确定 然后用手机文件夹找到你要 ...
- HTML列表标签
<ul>无序列表 有2个属性 1.compact 属性: 规定列表呈现的效果比正常情况更小巧.没啥作用 2.type 属性 disc小圆点 square小方块 circle小圆圈(默认) ...
- CF1288F Red-Blue Graph
Link 考虑上下界+费用流. 对于左部点\(u\): 如果颜色为\(B\),连\((s,u,[1,+\infty),0)\). 如果颜色为\(R\),连\((u,t,[1,+\infty),0)\) ...