文档详情

第8章-面向对象编程.pdf

发布:2018-04-16约1.61万字共12页下载文档
文本预览下载声明
132 第 8 章 面向对象编程 第 8 章 面向对象编程 Java 作为一门完全的面向对象语言有它本身的特性,在前面的讲解中,重点主要放在了 知识点的讲解上,一些代码的编写并不符合 Java 的规范。在这一章中主要对 Java 的一些编 程规范以及技巧进行简单的讲解。 8.1 封装性 作为一门完全的面向对象语言,封装是 Java 的三大特征之一。面向对象语言的优点之一 就是可以写一个类给别人使用,但是在类中并不是所有的信息都能让用户可见的,因此隐藏 这些信息就显得很有必要,这就是面向对象对封装的要求。Java 的封装是通过 private 、 protected 和 public 来实现的。 8.1.1 成员变量的封装 在前面的程序中,成员变量都为 public 或是默认修饰符的。实际上这是违反面向对象思 想的,在面向对象编程中有一原则,即尽量让数据私有。 也许读者会有疑问如果数据私有的话,怎么访问这些成员变量呢?答案是通过方法来访 问。下面是一个简单的实例,用标准的形式实现前面的Human 类,代码如下。 class Human { //成员属性都是私有的 private String name; private String sex; private int age; private String addr; //public 的设置和访问方法 public String getName() { return name; } public void setName(String name) { this.name = name; } //省略其他变量的 get 和 set 方法 public void work() { System.out.println(我在工作); } public void eat() { 133 Java 从入门到精通 System.out.println(我在吃饭); } } 在程序中类 Human 的 4 个属性 name 、age、sex、addr 都被声明为 private ,对每个属性 都提供了一个 set 方法和一个 get 方法用来设置和获取相应属性的值,并且都声明为 public 。 显然其他的类直接访问这些属性是不行的,而应该使用类提供的方法来取值和赋值。示例如 下。 public class HumanDemo { public static void main(String[ ] args) { Human zhangsan=new Human(); //zhangsan.name=张三; 这个语句是错误的 //设置成员变量的值 zhangsan.setName(张三); zhangsan.setAge(25); zhangsan.setS
显示全部
相似文档