学习Java的Day03

知识点

继承:

描述类与类之间的关系
       类A 继承 类B  -----> 类A 是类B 的子类

为什么要继承:

  当程序中如果多个类存在有共同的属性和功能的时候,需要把共同的属性和功能提取出来放在父类中。让其他子类继承这个父类,减少代码开发,提高 代码的复用性

    当子类继承父类的时候,子类就会自动获取父类中的属性和方法
        Java中只允许单继承,不能多继承,一个类只能直接继承一个父类
       允许一个类有多个子类,但是不能一个类有多个父类
       在程序中一旦声明了一个普通类,自动继承了Object类
       在类中的属性私有化,对于子类来说不能直接使用,通过getter和setter方法来实现
       在子类中重写了父类的方法,在子类中调用该方法时,调用子类重写之后的方法。(就近原则)
       重写机制:子类重写父类中的方法,那么在子类中,必须按照父类中的方法语法格式进行编写。
     (返回值,方法名,参数都不能修改,访问权限可以改变,但是子类的权限不能小于父类的权限)
       如果在子类中的方法上有@override  那么要求父类中必须有该方法;(@override  重写,增强编译性)
       如果子类想要子类去调用父类的方法 。super和static不能共存(在main方法外面声明一个方法,调用这个方法。)

抽象类 :

  本质上还是一个类一般会在父类中把方法定义成抽象方法,没有方法体,抽象方法特征是以分号为结尾。如:public void test();
    普通方法特征是以{} 为结尾;
    普通类,不能存放抽象方法
    只能在抽象类中声明抽象方法
    在类前面添加abstract关键字,该类就是抽象类
    在方法前面添加abstract关键字,该方法就是抽象方法
    在程序中一般情况下,会把抽象类定义为父类
    在抽象类里面不能直接实例化对象,,具有系统提供的默认的构造方法
    在抽象类中既可以声明抽象方法,也可以声明 普通成员方法
    子类不用必须去重写抽象类中的普通成员方法
    abstract  关键字会和其他关键字一起使用时会遇到的问题

    1.private :私有的,一般在类内部使用的,不允许外部类有权限访问的
    2.abstract:抽象的,一般让子类重写使用的
    3.final: 最终的,不可以修改。修饰方法时,该方法是最终的方法,不能重写。
    4.static:静态的,修饰方法,变量  凡是静态的都属于类。

    静态方法  一般通过类名去调用。

 

上一篇:java学习笔记(day03)


下一篇:c++基础学习笔记——04-c++day03