1.什么是封装

  • 把对象的状态和行为归为一个整体当中,即字段和方法放到一个类中

  • 信息隐藏:把不需要让外界知道的信息隐藏起来尽可能隐藏对象功能实现细节,向外暴露方法,保证外界安全访问功能

 

2.封装的好处

  • 保证数据的安全

  • 提高组件的复用性

 

3.访问修饰符

    访问权限修饰符来规定在一个类里面能看到什么,能暴露什么

  • private:类访问权限;类里面可以访问,类外不能访问

  • protected:子类访问权限,同包和继承可以访问

  • public:公共访问权限,当前项目中任何地方访问

  • 默认:包访问权限,同包可以访问,继承不能

 

4.属性的概念

  • 属性和字段类似也是一个成员变量,但是必须要有getter、setter方法才可以叫属性,不然只能叫字段或成员变量

  • 一般属性都是私有,公有的话别人可以直接获取和设值了

面向对象——封装_成员变量

这样就只能通过getter来获得值,通过setter来设置值而不能直接访问age属性

 

5.this关键字

  • this指的是当前对象的地址

面向对象——封装_当前对象_02

  • 通过图中打印对象变量和this,也可验证。this是表示当前对象地址相当于当前对象的变量

  • 解决成员变量和参数问题

  • 同类中实例方法相互调用可省略this

  • this可以作为参数也可以作为返回值,总之表示了对象相当于那个对象变量

  • 在构造方法相互调用中,由于构造方法不能直接用这个时候用this()就相当于构造方法,并且必须第一行。this这时表示构造方法的名字

 

注意:this不能和static 一起使用,因为static和字节码是在载入JVM内存时就纳入了方法区,此时还没有执行还没有使用对象。this没有指向