Java三大特性之封装

一.封装

封装概念:安全

  将类的某些信息隐藏在类内部,不容许外部程序直接访问,而是经过该类提供的方法来实现对隐藏信息的操做和访问this

封装解决什么问题:设计

若是任何一个处理类均可以直接对对象的属性进行赋值操做,那么当值不许确的时候,可能会产生额外的结果3d

封装的做用:对象

使用封装能够保证数据的规范,不符合规范的数据将没法进行操做blog

封装的好处:排序

1.隐藏类的内部实现细节get

2.只能经过提供的方法进行访问,其余方法没法访问程序设计

3.能够根据需求添加复杂的逻辑判断语句变量

4.方便修改实现

面向对象的封装(侠义)能够用一句话概述:

将类中的属性设置为私有属性,提供公有的外部方法供程序进行调用,能够实现丰富的细节操做(及为了保证是数据安全和规范)

广义的封装:

能够将完成特定功能的代码块封装成一个方法,供不一样的程序进行调用

程序设计要追求“高内聚低耦合”:

高内聚就是类的内部数据操做细节本身完成,不容许外部干涉

低耦合就是仅暴露少许的方法给外部使用

如何使用封装:

  

例如:封装年龄属性

  private  int  age;

  public  int  getAge(){                

    return  this.age;       

  }              

  public  void  setAge(int  age){

    if(age > 0){

      this.age  =  age;

    }else {

      System.out.println("输入年龄不合法");

    }

  }

二.访问控制符

访问权限(如下分类按照从大到小进行排序):

  public:公共的

    当前项目中的全部的类均可以进行访问

  protected:受保护的

    能够被当前类访问,能够被当前包访问,能够被子类访问

  default:默认权限

    能够被当前类访问,能够被当前包访问

  private:私有的

    只能被当前类进行访问

注意:类的访问权限只有两种

  public:可被同一项目中全部的类访问

  default:可被同一包中的类访问

三.值传递

方法参数的值是否改变

  方法中的参数列表叫作形式参数,没有具体的值,只是为了方便在方法体中使用

  调用方法的时候实际传入的值叫作实际参数,表明具体的数值,用来替换在方法体中代码逻辑的值进行运算

  注意:

    1.形式参数的变量名称也是局部变量

    2.当方法的参数值是基本数据类型的时候,不会改变原来的值

    3.当方法的参数值是引用类型的时候,若是改变了该引用类型的值,会改变原来对象的值

     不会改变原有值:                               会改变原有值:

            

相关文章
相关标签/搜索