- 1、本文档共78页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
访问控制符 访问控制符是一组限定类、属性和方法是否可以被程序其他部分访问的修饰符 。 类访问控制符-public 公共类 :public 类名 一般类 :无public修饰的类 公共类:表明它可以被其他所有的类访问。 一般类:只能被同一包中的类所访问;一个包中的类不用说明可相互访问。 把常在一起协同工作的类放在一个包里是很自然的。 类成员(属性和方法)的访问控制 一个类作为整体对程序的其他部分可见,并不能代表类内的所有属性和方法也同时对程序的其他部分可见,前者只是后者的必要条件。 属性和方法的访问控制符 public 公共域和公共方法,可被任何类使用。 protected 可被同包中其他类使用。 可被子类继承(包括位于不同包中的子类) 无访问限定符 可被同包中其他类使用。 private 只限在本类内使用。 类成员(属性和方法)的访问控制 公共类(public) 默认类 类成员访问控制符 public protected 缺省 private public protected 缺省 private 可以访问类成员的区域 A B+C B D B B B D 访问控制一般原则 本包使用,采用缺省方式; 供其他包使用,采用public控制符; 为了使对象具有良好的封装性,可将类的实例变量设计成私有,但为了使其它类或对象能够访问私有实例变量,本类必须提供访问私有变量的方法(公共方法)。 按照惯例: 读私有变量的方法取名为get… 写私有变量的方法取名为 set… 访问控制符例 public class Employee { private String name ; private char sex ; private int age ; private float salary ; public Employee(String n,char x, int a, float s){ name = n ; sex = x ; age = a ; salary = s ; } void upSalary(float inc) { salary = salary + inc ; } public int getAge() { return age ; } public void setAge(int a){ age=a ;} public String getInfo() { return 姓名: + name + 性别: + sex + 年龄: + age ; } } 其他类不能访问, 子类也不能继承 访问控制符例 public class Test { //与Employee在同一包中 public static void main(String[] args){ Employee emp = new Employee(赵兵,男,28,1500.0F); emp.upSalary(500); System.out.println(emp.age); //该语句出错 emp.setAge(29) ; System.out.println(emp.getAge()); System.out.println(emp.getInfo()); } } 访问控制符例 public class Manager extends Employee { float allowance ; public Manager(String n,char x , int a , float s,float aa ){ super(n,x,a,s) ; allowance = aa ; } public String getInfo() { return name+sex+age+salary ; // 出错,父类属性没有继承 } } //Manager 接口-interface 接口-具有抽象类的概念 接口中的方法都是没有方法体的抽象方法 public abstract 方法(修饰符可省) 接口中的属性只能是常量 public static final 属性 (修饰符可省) 接口定义的仅仅是实现某一特定功能的一组方法的对外接口和规范,而并没有真正地实现这个功能。 接口所规定的一组功能的实现是在继承了这个接口的各个类中完成
您可能关注的文档
- 新Java程序设计 教学课件 韦鹏程 石熙 肖丽 单元12 网络编程.ppt
- 新Java程序设计基础与实践 电子教案 费雅洁 第1章.ppt
- 新Java程序设计基础与实践 电子教案 费雅洁 第2章.ppt
- 新Java程序设计基础与实践 电子教案 费雅洁 第3章.ppt
- 新Java程序设计基础与实践 电子教案 费雅洁 第4章.ppt
- 新Java程序设计基础与实践 电子教案 费雅洁 第5章.ppt
- 新Java程序设计基础与实践 电子教案 费雅洁 第6章.ppt
- 新Java程序设计基础与实践 电子教案 费雅洁 第10章.ppt
- 新Java程序设计基础与实践 电子教案 费雅洁 第11章.ppt
- 新Java程序设计基础与实践 电子教案 费雅洁 第12章.ppt
文档评论(0)