java面向对象之封装

  封装:把类的属性和方法隐藏起来的一个过程

  Java中通过将数据声明为私有的(private),再提供公共的(public)方法:getXxx()和setXxx()实现对该属性的操作,以实现下述目的:

    隐藏一个类中不需要对外提供的实现细节;
    使用者只能通过事先定制好的方法来访问数据,可以方便地加入控制逻辑,限制对属性的不合理操作;
    便于修改,增强代码的可维护性;
    利于分工合作

    

public class Animal{

  private int legs;             //将属性legs定义为private,只能被Animal类内部访问

  public void setLegs(int i){         //编写setLegs方法允许修改成员变量

    if (i != 0 && i != 2 && i != 4){    //可以在方法里对属性就行控制

       System.out.println("Wrong number of legs!");

       return;                

    }

   legs=i;

  }

  public int getLegs(){          //编写getLegs方式,允许获取成员变量

  return legs;               //返回legs的值

  } 

}

    Java权限修饰符public(公开的)、protected(受保护的)、private(私有的),和默认的(不写)置于类的成员定义前,用来限定对象对该类成员的访问权限.

修饰符

本类

同一个包

不同包子类

不同包非子类

private

V

     

默认的(不写)

V

V

   

protected

V

V

V

 

public

V

V

V

V

静态方法里不能直接访问非静态的属性和方法。

posted @ 2014-04-16 22:21  大石碎胸口  阅读(134)  评论(0编辑  收藏  举报