Java面向对象三大特征

面向对象三大特征:封装继承多态

一、封装

封装就是将一些细节信息隐藏起来,对于外界不可见

封装性在Java当中的体现:
1、方法就是一种封装
2、关键字private也是一种封装

  一旦使用了private进行修饰,那么本类当中仍然可以随意访问。但是!超出了本类范围之外就不能再直接访问了。
  间接访问private成员变量,就是定义一对Getter/Setter方法
  必须叫setXxx或者是getXxx命名规则。
  对于Getter来说,不能有参数,返回值类型和成员变量对应;
  对于Setter来说,不能有返回值,参数类型和成员变量对应。
  注意:对应基本类型当中的boolean值,Getter方法一定要写成isXxx的形式,而setXxx规则不变。

二、继承

继承是多态的前提,如果没有继承,就没有多态。

继承主要解决的问题就是:共性抽取

专业术语:

  • 父类,也可以叫基类、超类
  • 子类,也可以叫派生类

继承关系当中的特点:
1、子类可以拥有父类的“内容”
2、子类还可以拥有自己专有的内容。

在继承的关系中,“子类就是一个父类”。也就是说,子类可以被当做父类看待。
例如父类是员工,子类是讲师,那么“讲师就是一个员工”。关系:is-a。

定义父类的格式:(就是一个普通的类的定义)

  public class 父类名称{
        //...
  }

定义子类的格式:

  public class 子类名称 extends 父类名称{
        //...
  }

在父子类的继承关系当中,如果成员变量重名,则创建子类对象时,访问有两种方式:

  • 直接通过子类对象访问成员变量;

    等号左边是谁,就优先用谁,没有则向上找。
    System.out.println(zi.num);
    
  • 间接通过成员方法访问成员变量;

    方法属于谁,就优先用谁,没有则向上找。
    

三、多态

博客内容用于记录自己学习后的收获,如有侵权请联系我删除
原文地址:https://www.cnblogs.com/ptxiaochen/p/13476551.html