【进阶】2.1对象的识别,2.2对象的交互,2.3封闭的访问属性,2.4开放的访问属性,2.5包,2.6类变量,2.7类函数

本文探讨了Java编程中对象的识别、交互和属性访问控制。通过Display和Clock类展示了如何实现计数器功能,并演示了当分钟满60时如何通知小时加1。同时,讲解了private和static修饰符的作用,强调了静态函数只能访问静态成员变量的限制。此外,还介绍了Java中的包、编译单元和类变量的概念。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

2.1对象的识别

请添加图片描述

package clock;

public class Display {
	private int value = 0;//private代表该定义的变量只能在内部调用
	private int limit = 0;
	
	public Display(int limit)
	{
		this.limit = limit;
	}
	
	public void increase()
	{
		value++;
		if(limit == value) {
			value = 0;
		}
	}
	public int getValue(){
		return value;
	}

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Display d = new Display(24);
		for(; ;) {
			d.increase();
			System.out.println(d.getValue());
		}

	}

}

2.2对象的交互

当分钟满60以后,如何通知小时加1?
通过Clock这个类来进行联系

package clock;
public class Clock {

	private Display hour = new Display(24);
	//创建了一个display的对象,一个名为hour的成员变量
	private Display minute = new Display(60);
	
	public void start(){//时钟开始走
		while(true) {
			minute.increase();
			if(  minute.getValue() == 0) {
				hour.increase();
			}
			System.out.printf("%02d:%02d\n",hour.getValue(),minute.getValue());
			//%02d表示输出字符一定占据两个位置,不足位数的用0
		}
		}
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Clock clock = new Clock();
		clock.start();
	}
}

2.3封闭的访问属性

请添加图片描述
1,private只能用于成员变量和成员函数

private int value = 0;//private代表该定义的变量只能在类的内部调用

请添加图片描述

2.4开放的访问属性

1,如果不在成员函数前面加上“private”或者“public”来限定它,它就是“friendly”,意味着和它位于同一的package的其他类(除去“private”,“public”之外其他的类)可以访问它。
请添加图片描述

2,编译单元
请添加图片描述
一个编译单元里面可以有很多类,但只有一个public的类
请添加图片描述

2.5包

请添加图片描述
1,

import display.Display;//使用另外一个包(display)里的类(Display)

2,请添加图片描述

2.6类变量

static——类变量
属于这个类(Display),不存在于对象(d1,d2)之中
请添加图片描述
请添加图片描述
请添加图片描述

2.7类函数

1,static的函数只能调用static的函数,只能访问static的成员变量。
请添加图片描述
———————————————————————————————————————————
请添加图片描述
———————————————————————————————————————————
请添加图片描述

如图所示,不能直接调用 increase(),static是类变量。只属于属于这个类(Display),因此static的函数只能调用static的函数,只能访问static的成员变量。

2,step的初始化只做一次
请添加图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值