• Java基础9一面向对象


    继承

    1、特点

    a) 要有一定的层次结构,并且具备可传递性。

    b) 判断两者之间是否有继承关系通过is-a来判断。

    c) 子类继承了父类,那么子类就继承了父类中所有的属性和方法,但是父类中的私有属性和构造方法除外。原因:父类中的私有属性是属于父类,子类无法继承,父类中的构造方法是创建父类对象的,子类无法继承。

    d) 子类继承了父类,但是子类也可以拥有自己的属性和方法。

    e) java中只支持单一继承,即一个子类只能继承一个父类,但是一个父类可以有多个子类。

    f) 作用:提高代码的重用性。

    g) java中通过extends 关键字实现继承,语法如下:

    [访问修饰符] class  子类名称 extends 父类名称{
    }

    2.super关键字

    A、前提:super关键字只能用在有继承关系的子类中。

    B、作用:super表示对当前类父类对象的引用(也就是说super表示的是一个父类对象)

    C、用法:

    (a)调用父类中的属性:super.属性名称;

      (b)调用父类中方法:super.方法名称(参数列表);

        创建子类对象时,一定会先执行父类中的构造方法,创建父类对象,然后再调用子类的构造方法创建子类对象。

      (c)super关键字的第二大用法:

    如果子类构造方法没有显式调用超类构造方法,那么会调用超类的默认构造方法。

    如果超类没有默认构造方法,而且子类构造方法又没有显示调用超类的其它构造方法,那么编译将报错。

    若要在子类构造方法中调用超类构造方法,则在子类构造方法的第一条语句用关键字 super来调用。 

    语法为:

    a) super() ;   //显式调用超类的无参构造方法

    b) super(实参列表) ;   //显式调用超类的带参构造方法

    3.访问修饰符

    a) private只能在本类中访问,一般用来修饰属性

    b) 默认的可以同一类或者同一个包中的类被访问

    c) protected同一个类同一个包中的类,或者不同包中的子类访问,但是在不同包中的子类访问父类protected修饰的属性时,需要通过子类对象访问。

    d) public用来修饰类,方法,表示公共的,一般类用public 或默认的访问修饰符修饰。

    4.final关键字

    final修饰的变量(成员变量或局部变量)的值不能改变,即等同于常量,在定义时就必须要进行初始化,之后就再也不改变它的值了。

    final可以修饰方法的参数,叫最终参数。调用这个方法时给最终参数赋值之后,在方法体内再也不能改变它的值了。

    final修饰的方法不能被子类重写。

    final修饰的类不能被继承。

  • 相关阅读:
    Redis为什么使用单进程单线程方式也这么快
    数据库表设计五大范式所解决的问题
    数据库范式那些事
    线上Java程序导致服务器CPU占用率过高的问题排除过程
    对分布式事务及两阶段提交、三阶段提交的理解
    About the diffrence of wait timed_wait and block in java
    Linux io Model
    阻塞与非阻塞,同步与异步
    深入理解JAVA I/O系列六:Linux中的IO模型(转载的文章非常值得学习)
    真正的Maven经常使用命令
  • 原文地址:https://www.cnblogs.com/smart-hwt/p/8191806.html
Copyright © 2020-2023  润新知