面向对象

面向对象(OOP):是一种以对象为中心的编程思想,通过指挥对象实现具体的功能。

面向过程:是一种以过程为中心的编程思想,实现功能的每一步都是自己实现的。

对象:指客观存在的事物,能够看得见摸得着的真实实体

总结:

  1. 客观存在的任何事物都可以看成是程序中的对象
  2. 使用面向对象思想可以将复杂的问题简单化
  3. 将我们从执行者的位置,变成了指挥者

什么是类?

定义:类是对现实生活中具有共同属性和行为的事物的抽象

类是对事物也是对象的一种描述,可以将类理解成一张设计图

类的组成

属性:

该事物的各种特征

例如:一个学生:姓名、年龄、身高、性别、毕业院校...

行为:

该事物存在的功能(能够做的事情)

例如:学生的行为:吃饭、睡觉、学习、运动...

类的定义

属性:

在代码中通过成员变量来体现(类中方法外的变量)

行为:

在代码中通过成员方法来体现(与前面的方法比去掉了static修饰)

面向对象基础复习20210902_类名

对象的创建和使用

创建对象的格式:

类名 对象名 = new 类名();

范例:Student stu = new Student();

对象的使用:

  1. 使用成员变量

    格式:对象名.变量名;

    范例:stu.name

  2. 使用成员方法

    格式:对象名.方法名

    范例:stu.study();

成员变量和局部变量

成员变量:类中方法外

局部变量:方法中的变量

面向对象基础复习20210902_成员变量_02

封装

面向对象:封装、继承、多态

private关键字

私有的,可以用来修饰成员(变量、方法)

特点:只能在本类中进行访问,在别的方法中就访问不到了

针对private修饰的成员变量,如果需要被其他类使用,提供相应的操作

  • 提供“get变量名()”方法,用于获取成员变量的值,方法用public修饰
  • 提供“set变量名(参数)”方法,用于设置成员变量的值,方法用public修饰

一个标准类的编写:

  • 把成员变量用private修饰
  • 提供对应的getXxx()和setXxx()方法
this关键字

在Java中当局部变量和成员变量重名的时候,会使用就近原则

如果想把一个变量标识为成员变量可以用this来修饰

this关键字的作用:可以调用本类中的成员(变量、方法),来解决局部变量和成员变量重名问题

this:代表所在类的对象引用(也就是内存地址)

  • 记住:方法被哪个对象调用,this就代表哪个对象

构造方法

创建、构造对象的时候,所调用的方法

系统会默认提供一个构造方法

格式:

  1. 方法名与类名相同,大小写也要一致
  2. 没有返回值类型,连void都没有
  3. 没有具体的返回值(不能由return语句带回结果数据)

执行时机:

  1. 创建对象的时候调用,每创建一次对象,就会执行一次构造方法
  2. 不能手动调用构造方法(手动调用:就是不能通过对象名.的形式去调用)
构造方法的作用

作用:用于给对象数据(属性)进行初始化

构造方法的注意事项
  1. 构造方法的创建
  • 如果一个类中没有编写任何构造方法,系统将给出一个默认的无参数构造方法

  • 如果定义了构造方法,系统将不会再提供构造方法

  • 也就是说如果自己定义了有参数构造方法,必须再手动写一个无参构造方法(也可以理解方法的重载)

  1. 构造方法的重载
  • 如果自定义了带参数构造方法,还要使用无参数构造方法,就必须再写一个无参数构造方法
  1. 推荐的方式
  • 无论是否使用,都手动书写无参数构造方法,和带参数构造方法
标准类的制作

面向对象基础复习20210902_类名_03

JavaBean类:封装数据