zoukankan      html  css  js  c++  java
  • java面向对象之继承

    面向对象的三大特征:封装,多态,继承

    继承

    继承的格式:

      class 子类名 extends 父类名{

      }

    继承注意的事项:

      1. 不能为了继承而继承,只有真正存在这继承关心的时候才去继承(比如狗和动物)

      2.父类私有的成员变量不能被继承

      3.父类的构造方法不能被继承

      4.再创建子类的对象的时候默认会调用父类无参的构造方法

    举个例子:

      父类:

     1 public class Student {
     2     String  name;
     3     public Student(){
     4     }
     5     public Student(String name ){
     6         this.name  = name;
     7     }
     8     public  void  Study(){
     9         System.out.println(name+"学习马克思列宁主义!!");
    10     }
    11 }

    子类:<基础班学生是学生的一种存在这继承关系>

    1 public class BaseStudent extends Student{  //
    2 
    3     public  BaseStudent(String name){
    4         super(name);
    5     }
    6     public void  Study(){
    7         System.out.println(name+"学习javaSE");
    8     }
    9 }

    如上子类中出现了一个super(name);表示调用了父类一个参数的构造方法

    super关键字:

      super关键字表示对父类空间的引用,怎么理解呢?

        可以理解为在子类创建的对象时分配的内存中单独开辟了一部分空间用来存储父类的构造函数和成员,super关键字可以调用这篇空间的内容;

      super关键字使用场景:

        1.如果子类和父类拥有同名的成员时,根据java就近原则会先调用子类的成员,则可以使用super关键字访问父类的成员变量

        2.创建子类对象时默认会调用父类的无参构造方法,可以使用super关键字访问父类带参的构造函数(如上代码中的super(name))

      super关键字使用细节:

        1.super关键字一般会出现在子类得到构造方法中,而super必须时在子类的构造方法中的第一个语句位置

        2.super和this不能同时出现在一个构造方法中调用其他的构造函数(因为都需要出现在第一条语句上)

    —————————————————————————————————————————————————————————————————————————————————————————————————————————————— 保持学习的劲头
  • 相关阅读:
    程序员最艰难的十大任务
    ssh(安全外壳协议)
    数据库备份 计划任务
    计划任务 crontab
    数据库设计二
    mysql存储过程详解[转]
    Java开发必装的IntelliJ IDEA插件
    SQLYog快捷键大全
    HTTP深入浅出 http请求
    浏览器HTTP请求分析
  • 原文地址:https://www.cnblogs.com/qkblogs/p/12694072.html
Copyright © 2011-2022 走看看