当前位置:首页 > 编程教程 > java教程 > 第三十一篇 Java封装

第三十一篇 Java封装
栏目分类:java教程发布日期:2019-09-21浏览次数:

第23章-Java封装 我们在面向对象编程中,封装(英语:Encapsulation)是指一种将抽象性函式接口的实现细节部份包装、隐藏起来的方法。封装可以理解为一层保护膜以防止该类的代码和数据被外部类的代码随机访问。它的最主要的功能是在于我们可以随意修改自己的
第23章-Java封装
我们在面向对象编程中,封装(英语:Encapsulation)是指一种将抽象性函式接口的实现细节部份包装、隐藏起来的方法。封装可以理解为一层保护膜以防止该类的代码和数据被外部类的代码随机访问。它的最主要的功能是在于我们可以随意修改自己的代码,而不用修改我们调用的代码的程序片段,这样既利于代码的维护同时也加强了代码的安全性。
 
Java封装的实现:
1,修改可见属性来限制访问,如:
public class Person {
    private String name;
    private int age;
}

在这段代码中我们将name和age的属性设置为了私有属性,而只有本类才对私有属性进行访问,其它类无法对其进行访问。如此一来我们便对该类的信息进行了隐藏。
2.对每个值的属性提供对外公共访问的访问方法,也就是要创建一对赋值取值的方法用于对值的私有属性进行访问,如:
public class Person{
    private String name;
    private int age;

    public int getAge(){
      return age;
    }

    public String getName(){
      return name;
    }

    public void setAge(int age){
      this.age = age;
    }

    public void setName(String name){
      this.name = name;
    }
}

在这里我们使用this关键字是为了防止实例变量与局部变量的同名冲突。
实例如下:
public class EncapTest{
 
    private String name;
    private String idNum;
    private int age;
  
    public int getAge(){
       return age;
    }
  
    public String getName(){
       return name;
    }
  
    public String getIdNum(){
       return idNum;
    }
  
    public void setAge( int newAge){
       age = newAge;
    }
  
    public void setName(String newName){
       name = newName;
    }
  
    public void setIdNum( String newId){
       idNum = newId;
    }
 }

上面实例中的public方法是外部访问的该类成员变量的入口,通常情况下我们将类方法成为getter和setter,所以如果想对类中的私有成员进行访问就不得不使用这些getter和setter方法。

相关热词: java

     
编程入门 编程教程 编程资源 编程问答