• 抽象类和接口


    抽象类

    为什么要引用抽象类这种类:父类中有许多的方法没有具体内容;而且子类中重写父类的方法如果写错,不会提示错误;所有我们引用抽象类来对子类加以限制,同时将父类中没有具                               体方法的方法,定义为抽象,可以更加简洁。不需要再用{}来表示方法。      

    抽象类和抽象方法:不知道具体内容的类和方法

    抽象类的定义:abstract class 类名{}

    抽象方法的定义:abstract 返回类型 方法名(形参);

    怎么引用抽象类:抽象类不能被直接new,但是可以调用它的派生类----当抽象类有自己的派生类时可以直接调用派生类来实现调用抽象类;当没有派生类时,需要自己写一个派生自这                       个抽象类的派生类,来变相调用这个抽象类。

    注意:抽象类不能被直接new出来;抽象方法没有函数体;抽象类中可以没有抽象方法,但是有抽象方法的类必定是抽象类;抽象类中可以包含成员变量、抽象方法、非抽象方法;抽           象类的派生类可以不实现抽象方法,但是引用的类必须要注明是抽象类。

    接口

    接口可以理解为就是一个独特的抽象类,他只有常量和抽象方法

    定义方法:    interface 接口名 [extends 父接口列表]{
               final 类型 常量名=值;
               public void 方法名(形参);
             }

    接口的实现:
    [abstract] class 类名 extends 父类 implements 接口列表{}  //[]代表可以省略不写

    定义接口时要遵循接口分离原则,即接口实现的功能尽量的少,最好一个借口实现三个以下的功能;同时接口的接口名尽量是形容对象方法的形容词。

    注意:类是单继承,而接口可以多个引用。

    this:这个对象

    super:父类

    final:当修饰成员变量时,相当于常量

       当修饰方法时,说明方法是终态方法,不可以进行重写操作

         当修饰类时,说明类是终态类(可以理解为最具体,不能再具体),不可以被继承

     例如之前做的猫叫同时惊醒了人、老鼠和另一只猫:

    新建三个接口分别为人、老鼠、猫,

    分别给他们自己的行为方法,然后再建立一个猫叫的类来调用这三个接口

    之后用main函数来调用猫叫函数 实现猫叫惊醒了人、老鼠和另一只猫

             

  • 相关阅读:
    HDU-3336-Count the string(扩展KMP)
    洛谷-P3805-Manacher模板
    洛谷-p5410-扩展KMP模板
    HDU-2594-Simpsons' Hidden Talents(kmp, 扩展kmp)
    POJ-3080-Blue jeans(KMP, 暴力)
    [办公应用]两个单独的列数据快速变为两列匹配关联数据
    [办公应用]如何将单词中的部分字母加下划线
    [办公应用]word 2007:全屏快捷键,让复制图片保持原样大小(office 全屏快捷键)
    [办公自动化]如何让excel图表标签中显示最新值数据
    [计算机故障处理]无法访问网络共享资源
  • 原文地址:https://www.cnblogs.com/dnf1612/p/6235633.html
Copyright © 2020-2023  润新知