读书人

thinking in java 四访问权限控制

发布时间: 2012-12-24 10:43:14 作者: rapoo

thinking in java 4访问权限控制
1.包(库单元),包内包含有一组类,他们在单一的名字空间下被组织到了一起,按照惯例,package的第一部分是类的创建者的反顺序的Internet域名。因为internet域名是唯一的不会和别人的冲突。java编译过后,程序运行并且需要加载.class文件的时候,他就可以确定.class文件在目录上所处的位置(java解析器获取包的名称,根据包名将"."根据不同的操作系统置换为/或者\,加上CLASSPATH环境变量就得到了完整的路径)。
2.private

//User类:public class User {private String uname;private User() {}static User makeUser(String name){return new User(name);}private User(String uname) {this.uname = uname;}public String getUname() {return uname;}public void setUname(String uname) {this.uname = uname;}}//main:public static void main(String[] args) {   User u =User.makeUser("rose");   //User对象中的构造方法是私有的   //必须通过调用makeUser的静态方法来达到创建User对象的目的}

注意:子类不能直接使用和读取父类的private数据,要通过父类提供的public access方法,即getter和setter。因为User类中的构造器是private的,继承的时候子类会自动调用父类的无参构造函数,但此函数又不存在,子类会报错( Implicit super constructor SuperClass() is undefined for default constructor. Must define an explicit constructor),所以这里的User类不能被继承。

读书人网 >编程

热点推荐