• 20165101刘天野 2017-2018-2 《Java程序设计》第4周学习总结


    20165101刘天野 2017-2018-2 《Java程序设计》第4周学习总结


    教材学习内容总结

    第五章:子类与继承

    面向对象程序设计语言有三大特性:封装、继承和多态性。继承是面向对象语言的重要特征之一,没有继承的语言只能被称作“使用对象的语言”。继承是非常简单而强大的设计思想,它提供了我们代码重用和程序组织的有力工具。

    我们把用来做基础派生其它类的那个类叫做父类、超类或者基类,而派生出来的新类叫做子类。Java用关键字extends表示这种继承/派生关系:

    class ThisClass extends SuperClass { 
    	//…
    }
    

    继承表达了一种is-a关系,就是说,子类的对象可以被看作是父类的对象。

    不同访问属性的父类成员在子类中的访问属性:

    父类成员访问属性 在父类中的含义 在子类中的含义
    public 对所有人开放 对所有人开放
    protected 只有包内其它类、自己和子类可以访问 只有包内其它类、自己和子类可以访问
    缺省 只有包内其它类可以访问 如果子类与父类在同一个包内:只有包内其它类可以访问 否则:相当于private,不能访问
    private 只有自己可以访问 不能访问

    一、父类引用指向子类对象时

    • 若子类覆盖了某方法,则父类引用调用子类重新定义的新方法

    • 若子类未覆盖某方法,则父类引用调用父类本身的旧方法

    • 若子类覆盖了某属性,但父类引用仍调用父类本身的旧属性

    • 若子类未覆盖某属性,则父类引用调用父类本身的旧属性

    • 父类引用不能访问子类新定义的方法

    二、子类引用指向自身对象时

    • 若子类覆盖了某方法,则子类引用调用子类重新定义的新方法

    • 若子类未覆盖某方法,则子类引用调用父类本身的旧方法

    • 若子类覆盖了某属性,则子类引用调用子类重新定义的新属性

    • 若子类未覆盖某属性,则子类引用调用父类本身的旧属性

    • 子类引用可以访问子类新定义的方法

    第六章:接口与实现

    接口的定义

    使用interface来定义一个接口。接口定义同类的定义类似,也是分为接口的声明和接口体,其中接口体由常量定义和方法定义两部分组成。定义接口的基本格式如下:

    [修饰符] interface 接口名 [extends 父接口名列表]{

    [public] [static] [final] 常量;
    [public] [abstract] 方法;
    }

    修饰符:可选,用于指定接口的访问权限,可选值为public。如果省略则使用默认的访问权限。

    接口名:必选参数,用于指定接口的名称,接口名必须是合法的Java标识符。一般情况下,要求首字母大写。

    extends 父接口名列表:可选参数,用于指定要定义的接口继承于哪个父接口。当使用extends关键字时,父接口名为必选参数。

    方法:接口中的方法只有定义而没有被实现。

    接口的实现

    接口在定义后,就可以在类中实现该接口。在类中实现接口可以使用关键字implements,其基本格式如下:

    [修饰符] class <类名> [extends 父类名] [implements 接口列表]{
    }

    修饰符:可选参数,用于指定类的访问权限,可选值为public、abstract和final。

    类名:必选参数,用于指定类的名称,类名必须是合法的Java标识符。一般情况下,要求首字母大写。

    extends 父类名:可选参数,用于指定要定义的类继承于哪个父类。当使用extends关键字时,父类名为必选参数。

    implements 接口列表:可选参数,用于指定该类实现的是哪些接口。当使用implements关键字时,接口列表为必选参数。当接口列表中存在多个接口名时,各个接口名之间使用逗号分隔。

    在类中实现接口时,方法的名字、返回值类型、参数的个数及类型必须与接口中的完全一致,并且必须实现接口中的所有方法。

    代码托管

  • 相关阅读:
    GDUFE ACM-1050
    hdu-2020
    hdu-2055
    hdu-2734
    GDUFE ACM-1145
    GDUFE ACM-1127
    GDUFE ACM-1126
    GDUFE ACM-1125
    GDUFE ACM-1124
    GDUFE ACM-1123
  • 原文地址:https://www.cnblogs.com/lty12345678911/p/8647847.html
Copyright © 2020-2023  润新知