S2_OOP第一章

时间:2023-03-09 19:17:03
S2_OOP第一章

面向对象设计的过程就是抽象的过程

步骤:

第一步:发现类

第二步:发现类的属性

第三步:发现类的方法

抽象是遵循的原则

属性和方法的设置是为了解决业务问题

关注主要属性和方法

如果没有必要,不增加额外的类、属性、方法

构造方法及其重载

Java可以和C#一样使用带参或者无参的构造方法(Constructor)完成赋值的初始化工作,系统会默认给定无参构造函数

构造方法

构造方法的名称和类名相同,没有返回值类型,构造方法的主要工作就是在创建对象时执行一些初始化操作

方法重载

方法重载就是多个方法的方法名相同,方法参数的个数不同或者参数数值类型不同。

Static修饰符

Static修饰的变量属于这个类所有,由这个类创建的所有对象共同一个static变量。通常被static修饰的成员成为类变量和类方法。不使用static修饰的成员属于的单个对象,通常称为实力属性(实例变量)和实例方法

结论

在加载类的过程中,完成静态变量的内存分配,在执行静态块,两者是在才黄建对象之前执行的

类属性和类方法可以通过类名和对象名访问,实例属性和实例方法只能通过对象名访问

类方法只能访问类属性和其他类方法

在方法里不可以定义static变量,也就是类变量不能是局部变量

封装

概念

封装是面向对象的三大特征之一,隐藏类内部的状态信息,通过该类提供的方法来实现对隐藏信息的访问和操作

封装的具体步骤

修改属性的可见性来限制属性的访问,为每个属性创建一个赋值(setter)方法和取值(getter)方法。

封装的优点

隐藏类实现细节

只让使用者通过程序规定的方法来访问数据

可以限制不合理操作和方便加入存取控制语句

This关键字

This关键字是对一个对象的默认引用,在每个实例方法内部,都有一个this引用变量,指定调用这个方法的对象

作用

使用this调用成员变量,解决成员变量和局部变量的同名冲突

使用this调用成员方法

使用this调用个重载的构造方法。只能在构造方法中使用,必须是构造方法的第一条语句。不能在多个构造函数中使,不然会发生递归现象