-
- 访问属性
- 封闭的访问属性
- private等访问权限控制是对类的,这意味着同一类的不同对象可以互相访问其成员
- 这是从代码层面去考虑的,意味着不同类文件
- 开放的访问属性
- 一个类文件就是一个编译单元
- public class可以在不同包不同类进行访问
- 没有任何访问控制权限的class只能在同一包里进行访问
- 封闭的访问属性
- 包
- 包名的 . 代表文件夹系统中文件的层次
- JVM自动生成的构造函数访问权限是Public
- 例如com.mieba.servlet和com.mieba.dao
- 文件夹层次为
- src
- com
- mieba
- servlet
- dao
- mieba
- com
- src
- 文件夹层次为
- 类变量
- 类变量
- 属于类,不属于对象
- 两种访问方式:class.变量 object.变量
- 类函数
- 类函数里只能访问类函数和类变量
- 类变量
- 测验和作业
- 有秒计时的数字时钟
-
1 package com.study; 2 3 import java.util.Scanner; 4 5 6 7 public class Main 8 { 9 10 public static void main(String[] args) 11 { 12 java.util.Scanner in = new java.util.Scanner(System.in); 13 Clock clock = new Clock(in.nextInt(), in.nextInt(), in.nextInt()); 14 clock.tick(); 15 System.out.println(clock.toString()); 16 in.close(); 17 } 18 19 20 } 21 22 class Display 23 { 24 private int value = 0; 25 private int limit = 0; 26 27 public Display(int limit) 28 { 29 this.limit = limit; 30 } 31 32 public int getValue() 33 { 34 return value; 35 } 36 37 public void setValue(int value) 38 { 39 this.value = value; 40 } 41 42 public void increase() 43 { 44 value++; 45 if (value == limit) 46 { 47 value = 0; 48 } 49 } 50 51 } 52 53 class Clock 54 { 55 56 private Display hour = new Display(24); 57 private Display minute = new Display(60); 58 private Display second = new Display(60); 59 60 public Clock(int hour, int minute, int second) 61 { 62 if(hour<24&&minute<60&&second<60) 63 { 64 this.hour.setValue(hour); 65 this.minute.setValue(minute); 66 this.second.setValue(second); 67 } 68 else 69 { 70 System.out.println("输入有误,程序结束"); 71 } 72 } 73 74 public String toString() 75 { 76 String hour = String.format("%02d", this.hour.getValue()); 77 String minute = String.format("%02d", this.minute.getValue()); 78 String second = String.format("%02d", this.second.getValue()); 79 return (hour+":"+minute+":"+second); 80 } 81 82 public void tick() 83 { 84 second.increase(); 85 if (second.getValue() == 0) 86 { 87 minute.increase(); 88 if (minute.getValue() == 0) 89 { 90 hour.increase(); 91 } 92 } 93 94 } 95 96 97 }
运行结果
- 访问属性