zoukankan      html  css  js  c++  java
  • java整理(三)

    1.继承性:继承已有的功能。使用extends关键字。class  子类   extends  父类{}

    子类又被称为派生类,父类又被称为超类。

    继承的限制:

    1.java中,不允许多重继承,即一个子类只能继承一个父类。一个C子类,想同时继承A和B,不可以多重继承,可以多层继承。class A{}class B extends A{}class C extend B{}

    2.子类继承的时候,将父类的内容全部继承下来,一下两点区别:所有的非私有操作采用显式继承。(子类可以直接使用)。所有的私有操作采用隐式继承(子类可以间接操作,可以通过方法操作)。

    3.子类对象在进行实例化之前,会默认调用父类中的无参构造方法,为父类属性分配空间,之后再调用子类自己的构造方法,为本类属性分配空间。



    2.覆写

    继承关系发生后,对于子类而言很有可能定义了与父类相同的方法或者属性,这个时候就会发生覆写的问题,当然覆写分为:方法的覆写和属性的覆写。

    方法的覆写就是子类定义了与父类相同的方法的时候(方法名称相同,参数的类型或个数相同、返回值类型相同)。

    覆写的时候要注意权限问题,被子类所覆写的方法不能拥有比父类更严格的访问控制权限。(就开发而言,在开发之中,基本上的方法90%都是使用public权限定义的)

    this和super的操作范围:

    this.方法()指的是调用本类的方法,如果本类中不存在此方法再从父类中查找使用;

    super()方法指的是直接调用父类中的方法,不再查找子类。

    属性的覆写:其实没有意义,因为属性必须封装,封装之后就无法覆写了。

    覆写和重载的区别

    NO.

    区别

    重载

    覆写

    1

    单词

    OverLoading

    Override

    2

    概念

    方法名称相同,参数的类型或个数不同

    方法名称,返回值类型、参数的个数及类型全部相同

    3

    范围

    发生在同一个类之中

    发生在继承关系中

    4

    权限

    重载的时候没有权限设置

    子类覆写的方法不能拥有比父类更严格的访问控制权限


    this和super的区别

    NO.

    区别

    this

    super

    1

    属性

    this.属性指的是找到本类的属性,如果本类没有找到则继续查找父类

    super.属性直接在子类之中查找父类中的指定属性,不再查找子类本身

    2

    方法

    This.方法()指的是找到本类的方法,如果本类没有找到则继续查找父类

    Super.方法()直接在子类之中查找父类中的指定方法,不再查找子类本身

    3

    构造

    都必须放在构造方法的首行,所以两个操作不能同时出现

    4

    特殊

    表示当前对象


    3.final关键字

    final  可以定义类、属性、方法。

    1.使用final定义类:意味着这个类不能有子类,就是一个太监类(个人定义的不多,系统类上经常出现)

    2.final定义方法:方法不能被子类覆写,在开发中很少直接编写。

    3.final定义的变量成为常量,内容不可改变,而且必须在定义的时候为其设置内容。


  • 相关阅读:
    #333 Div2 Problem B Approximating a Constant Range(尺取法)
    苦逼的单身狗(玄乎的尺取大法)
    欧拉项目第四题之三位数之积数的最大回数
    欧拉项目第三题之最大质数因子
    关于尺取法的认识与简单例题
    codeforces 980B Marlin
    康托展开和逆康托展开
    Chrome控制台中Network的Preview与Response区别
    配置Express中间件
    Express中间件简介
  • 原文地址:https://www.cnblogs.com/didi520/p/4165543.html
Copyright © 2011-2022 走看看