对象的识别
如何识别对象

package clock;
public class Display{
private int value=0;
private int limit=0;
//需要一个构造函数
public Display(int limit)
{
this.limit=limit;
}
public void increase(){
value++;
if(value==limit){
value=0;
}
}
public int getValue(){
return value;
}
//测试Display
public static void main(String []args){
Display d=new Display(24);
for(;;){
d.increase();
System.out.println(d.getValue());
}
}
}
对象交互

每个类和每个对象尽可能独立
public class Cloc{
//Display是对象,hour是一个成员变量,这个时候DIsplay没有对象,需要将他new出来
private Display hour=new Display(24);//需要有一个Display类型的hour
private Display minute=new minute(60);//还需要有一个Display类型的minute
public void start(){
while(true){
minute.increase();
if(minute.increase==0){
hour.increase();
}
System.out.printf("%02d:%02d\n",hour.getValue(),minute.getValue());
}
}
public static void main(String []args){
Clock clock=new Clock();
Clock.start();
}
}
访问属性-1
private
- 只有这个类内部可以访问
- 类内部之类的成员函数和定义初始化
- 这个限制是对类的而不是对对象的
访问属性-2
public
- 任何人都可以访问
- 任何人值得是在任何类的函数或定义初始化中可以使用
- 使用指的是调用,访问或定义变量
构造函数本身也是public
包package
package中可以带有点(名字)代表文件夹的层次
如果要用别的包李面的内容就应该import那个包
类变量-1
static 只有static的成员变量,可以通过类的名字加“.”
static :我们把它叫做类变量,即它不属于任何一个对象,它只属于这个类任何一个变量都拥有这个变量,但是只有一份
所有的函数都要有main
类的成员函数都不带static
加入我们有一个成员变量
package clock;
public class Display{
private int value=0;
private int limit=0;
private static int step=1;//做了一个成员变量和别人不一样多了一个static
//需要一个构造函数
public Display(int limit)
{
this.limit=limit;
}
public void increase(){
value++;
if(value==limit){
value=0;
}
}
public int getValue(){
return value;
}
//测试Display
public static void main(String []args){
// Display d=new Display(24);
// for(;;){
// d.increase();
// System.out.println(d.getValue());
// }
Display d1=new Display(10);//构造对象来测试他
Display d2=new Display(20);
d1.increase();
System.out.println(d1.getValue());
System.out.println(d2.getValue());
System.out.println(d1.step);
System.out.println(d2.step);//main函数还是Display的一部分
d1.step=2;//通过一个对象去改造step别的对对象也是会改的
System.out.println(d1.step);
System.out.println(d2.step);
Display.step=3;//Dispalay是一个类d1才是对象,成员变量是一在对象里面的的,
System.out.println(d1.step);
System.out.println(d2.step);
}
}
输出结果是:
1
0
1
1
2
2
3
3
类函数
static类函数:这个函数属于类而不属于成员函数
在static函数里,可以调用其他的是它的static函数
在static不能访问non-static
static的成员和对象的创建时没有关系的
网友评论