知识点掌握:了解
今日重点:this关键字、对象、构造器、封装
个人心得:今天学习了封装,大部分都听明白了,但是很烧脑子,学的很累。明天继续努力!

1. this关键字

  1. this代表当前类的对象,代表当前方法的调用者,通常在构造器赋值
  2. this既然是代表方法的调用者,它实际上和对象的作用是一样的,既可以调属性,也可以调方法。
  •  this不能用在static方法中。
    
  •  开发中,this通常用在什么位置?
    
  •  通常用在赋值,构造器赋值。
    

this调用构造器的要求

  1. 必须在构造器中使用this调用构造器
  2. 必须是第一句话(第一行代码)
    public Ch02(String str) {
        this.str = str;
    }
    public Ch02(String str,int i){
        this(str); //this调用构造器
        this.i = i;
    }

2. 知识点

2.1 什么时候用构造器赋值?

看创建对象是为了干什么

  • 如果说创建对象仅仅是为了调用这个类的方法,建议使用无参构造器
  • 如果说创建对象的时候需要使用到对象的某个属性,可以使用构造器赋值
2.2 对象有什么功能?
  1. 对象可以调用属性,可以调用方法
  2. 当使用对象调用属性时,调用的是成员变量
//person是Person类的对象,是Person类的实例
Person person = new Person();
//对象调用的属性
//当使用对象调用属性时,调用的是成员变量
person.name = "张三";
//对象调用的方法
person.eat();
2.3 一个类中可以有什么?

属性,方法,构造器

2.4 无参构造器
public 类名() {}

3. 面向对象的特征:封装

1.代码层面

​ (1)属性私有化,所有的属性都要使用private封装

​ (2)提供一个公有的set,get方法。

getter方法能够按照客户的期望返回格式化的数据

setter方法可以限制和检验setter方法传入的参数是否合法,可以隐藏对象的内部结构

正确定义一个类:

​ (1)所有的属性私有化

​ (2)每个属性都有对应的setter、getter方法

2.思想层面

把一堆重复执行的代码封装成方法。把一堆重复执行的方法封装成一个类。

4. 异常

3个异常:

1、数组下标越界

2、内存溢出(错误)

3、空指针

空指针异常 NullPointerException

什么情况下会出现空指针异常:

引用数据类型的默认值(初始值是null,空引用)

养成的一个习惯:保证每个类都有无参构造器