封装

来源:互联网 发布:mt4数据导出系统 编辑:程序博客网 时间:2024/06/07 22:55

什么是封装
封装就是把对象的所有组成部分组合在一起
封装定义程序如何引用对象的数据,封装实际上使用方法将类的数据隐藏起来,控制用户对类的修改和访问数据的程度
适当的封装可以让程式码更容易理解和维护,也加强了程式码的安全性
封装是把过程和数据包围起来,对数据的访问只能通过已定义的接口
在java中通过关键字private实现封装

举个例子

//类一:public class Man{  //对属性的封装  //一个人的姓名,年龄,妻子都是这个对象(人)的私有属性  //private 是私有  只在本类中有效   private String name;   private int age;   private Woman wife;  //该人对外界提供方法的封装,可以设定妻子,姓名,年龄也可以获得男人的姓名和年龄 // 方法封装  public void setWife(Woman wife) {  this.wife = wife;  }    public String getName() {  return name;  }  public void setName(String name) {  this.name = name;  }  public int getAge() {  return age;  }  public void setAge(int age) {  this.age = age;  }  }//类二:  public class Woman { // 属性封装  private String name;  private int age;  private Man husband; // 方法封装  public String getName() {  return name;  }  public void setName(String name) {  this.name = name;  }  public int getAge() {  return age;  }  public void setAge(int age) {  this.age = age;  }  public Man getHusband() {  return husband;  }  public void setHusband(Man husband) {  this.husband = husband;  }  }

仔细看就会发现,Man类没有提供getWife的方法,这是因为男人不想让自己的妻子被外界访问

封装可以把一个对象的属性私有,而提供一些可以被外界访问的属性的方法,
比如说,name属性,Man和Woman类都有相应的get和set方法,外界都可以通过这些方法访问和修改
同时对一些对象不想让外界访问的属性,就不提供其方法,比如说Man的wife属性,就没有get方法。外界是不能得到Man类的wife属性的

0 0
原创粉丝点击