• 1.摘要
  • 2.基本信息
  • 3.概念
  • 4.例子
  • 5.封装的作用

java 的封装

封装(Encapsulation)是面向对象方法的重要原则,就是把对象的属性和操作(或服务)结合为一个独立的整体,并尽可能隐藏对象的内部实现细节。

基本信息

  • 中文名

    java 的封装

  • 外文名

    The Java wrapper

  • 解释

    把过程和数据包围起来

  • 含义

    封装是一种信息隐藏技术

  • 语言

    计算机语言

概念

封装是把过程和数据包围起来,对数据的访问只能通过已定义的接口。面向对象计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治、封装的对象,这些对象通过一个受保护的接口访问其他对象。封装是一种信息隐藏技术,在java中通过关键字private,protected和public实现封装。什么是封装?封装把对象的所有组成部分组合在一起,封装定义程序如何引用对象的数据,封装实际上使用方法将类的数据隐藏起来,控制用户对类的修改和访问数据的程度。 适当的封装可以让程式码更容易理解和维护,也加强了程式码的安全性。

例子

封装的简单例子:

先来个例子看看;

public class Man{

//对属性的封装,一个人的姓名,年龄,妻子都是这个对象(人)的私有属性

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方法