08-JAVA封装

JAVA封装

JAVA封装思维导图

面向对象有三大特征:

1、封装

2、继承

3、多态

封装:

定义:

  • 隐藏类的内部信息,不允许外部程序直接访问,而是通过方法进行操作

封装操作步骤:

  • 1、将属性设置为private,只能在本类中使用,如private int age;

  • 2、编写对应属性的赋值方法,如setAge()和getAge()

    • 赋值方法:

      • public void setAge(int age){

      if (age>=0&&age<=100){

        this.age=age;
      

      }else {

        this.age=18;
      

      }

    }

    • 取值方法:

      • public int getAge(){

      return age;

    }

this关键字:

this关键字访问本类中的实例变量(对象变量):

  • this表示当前这个对象,也就是说当前谁调用这个方法,则这个对象就是谁

  • this关键字可以访问本类中的属性:

    • 当局部变量和成员变量没有同名时,则编写属性名等价于this.属性名,如id等价于this.id
    • 当局部变量和成员变量同名时,并且访问成员变量则需要使用this

this关键字访问本类中的实例方法(对象方法):

  • 方法名称([参数列表])

    • 等价于this.方法名称([参数列表])

this关键字访问本来中其他构造方法:

  • this();

  • this([参数列表]);

  • 注意:

    • 当时使用this访问本类中构造方法时,则只能编写在构造方法中,并且是一条语句,其他不可以,译错
    • 不可以自己调自己(递归调用)

static关键字:

为什么使用static关键字修饰属性:

  • 方法区(也叫共享区=》节省空间)

static关键字修饰属性(静态)

  • 称为静态属性,也叫类的变量,没有static称为非静态属性,也叫做实例变量

  • 在方法区(共享区)中存储,并且所有对象都可以访问

  • 与类同生死,也就是说类在,static修饰的属性就在

  • 使用:

    • 类名.属性名称
    • 引用名称.属性名称(new后)
  • 类优先于对象,也就是说类的生命周期比较长

static关键字修饰方法:

  • 称为静态方法,也叫做类的方法

  • 与类同生死,也就说类存在时,static修饰的方法就存在

  • 使用:

    • 类名.方法([参数列表]);
    • 引用名称.方法名称([参数列表]);(new后)
  • 静态方法中只能访问静态属性、静态方法

  • 当方法体中只访问静态属性、静态方法时,可以编写为静态方法,但如果有实列属性、实列方法则只能编写为非静态

static修饰静态代码块:

  • (构造方法:完成对实列变量的赋值)

  • (静态代码块:主要对静态属性赋值)

  • 静态代码块在类第一次被载入时执行

  • static String address;

    static {

    address=“北京”;

}

- address必须存在

引用数据类型作为参数:

当引用数据类型作为参数进行传递时,传递的是地址,也就是说公用同一个地址,当一个方法中地址所对应的属性值发生改变,则另一个地址中所对应的值也发生改变

引用数据类型进行赋值:

多个引用名称指向同一个对象,当一个引用名称改变对象中的值,则另一个引用名称在访问属性的值也会发生改变

基本数据类型作为参数传递:

当基本数据类型作为参数传递时,传递的是真正的值,当一个方法中的值发生改变时,对另一个方法的值没有任何改变,因为两个方法中的变量是各自独立的

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章