zoukankan      html  css  js  c++  java
  • Java 构造器Constructor 继承

    Java默认构造方法

    构造方法作用:初始化所定义的类的对象和属性。

    构造方法没有返回类型

     

    2 继承中的构造器

    子类是不继承父类的构造器(构造方法或者构造函数)的,它只是调用(隐式或显式)

    如果父类的构造器带有参数,则必须在子类的构造器中显式地通过 super 关键字调用父类的构造器并配以适当的参数列表。

    如果父类构造器没有参数,则在子类的构造器中不需要使用 super 关键字调用父类构造器,系统会自动调用父类的无参构造器。

    /*  Code   */

    class
    SuperClass { private int n; SuperClass(){ //父类的第一种构造方法,不带参 System.out.println("SuperClass()"); } SuperClass(int n) { //父类的第二种构造方法,带参 System.out.println("SuperClass(int n)"); this.n = n; } } class SubClass extends SuperClass{ private int n; SubClass(){ //子类的第一种构造方法,不带参 super(300); System.out.println("SubClass"); } public SubClass(int n){ //子类的第二种构造方法,带参 System.out.println("SubClass(int n):"+n); this.n = n; } } public class TestSuperSub{ public static void main (String args[]){ SubClass sc = new SubClass(); //对象sc没有参数,所以选择子类第一种构造方法。由于子类必须先调用父类的构造方法,且又显示的(用关键字super)调用了父类的第二种构造方法 SubClass sc2 = new SubClass(200); //对象sc2有参数,所以选择子类第二种构造方法。因为没有显示的调用父类的构造方法,所以系统隐式的调用父类无参构造方法 } }
    /*output*/
    SuperClass(int n) SubClass SuperClass() SubClass(int n):200

    解析:子类和父类都有多个构造方法,目的是根据对象中传入的参数类型自动选择该用的构造器。

  • 相关阅读:
    Java + Element-UI 实现简单的树形菜单
    简单了解一下 Nginx
    使用阿里云 OSS 存储、访问图片(Java)
    JSR 303 进行后台数据校验
    SpringBoot 常用注解
    12、js——轮播图
    11、js——定时调用和延时调用
    11、js——BOM
    10、js——事件
    9、js——样式相关的操作
  • 原文地址:https://www.cnblogs.com/JohnTeslaaa/p/10161036.html
Copyright © 2011-2022 走看看