• 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);
      
    • 间接通过成员方法访问成员变量;

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

    三、多态

    博客内容用于记录自己学习后的收获,如有侵权请联系我删除
  • 相关阅读:
    BZOJ3196: Tyvj 1730 二逼平衡树
    (转载)你真的会二分查找吗?
    Codeforces Round #259 (Div. 2)
    BZOJ1452: [JSOI2009]Count
    BZOJ2733: [HNOI2012]永无乡
    BZOJ1103: [POI2007]大都市meg
    BZOJ2761: [JLOI2011]不重复数字
    BZOJ1305: [CQOI2009]dance跳舞
    挖坑#4-----倍增
    BZOJ1042: [HAOI2008]硬币购物
  • 原文地址:https://www.cnblogs.com/ptxiaochen/p/13476551.html
Copyright © 2020-2023  润新知