zoukankan      html  css  js  c++  java
  • java有关构造器的面试题详解

    1,编译器只会提供自动提供一个默认的无参数的构造函数

    2,如果程序员没有给类A没有提供构造函数,则编译器会自动提供一个默认的无参数的构造函数,如果用户提供了自己的构造函数,则编译器就不在提供默认的无参数构造函数。

    3.子类有多个构造方法时,父类要么没有构造方法,让系统自动提供默认构造方法,那么在执行子类构造方法之前先执行父类的默认构造方法;要么就提供一个显式的构造方法供子类的构造方法调用。


    4,只发生在子类构造方法中出现super(,,)显性调用时,否则不报错,子类B实例化时会自动调用父类A的默认构造函数(调用对应参数的构造方法),所以如果A的默认的无参数的构造函数为private,则编译器会报错,而如果A没有提供默认的无参数的构造函数,而提供了其他类型的构造函数,编译器同样会报错,因为B找不到A的默认无参数构造函数。所以,我们最好给父类A提供一个无参数的构造函数。或者在B的构造函数中显示的调用父类A的有参构造函数。super(paramete

    5,当类中只是显性写出来带参数的构造函数,但new对象时不带参数,就会报错,此时编译器不会java提供一个默认的无参数的构造函数

    1.this()和super()必须放在第一行,且不能同时出现在一个函数中

    2.this(),super都指的是对象,所以不能出现在static中

    3,构造方法不能被继承

    4,构造方法不是类的成员方法

  • 相关阅读:
    团队建设
    风云变幻六十年 平板电脑演变史回顾
    在线ide汇总
    XAMPP中启动tomcat报错的解决方法
    ExtJs 中 xtype 与组件类的对应表
    FineReport关于Linux下字体乱码终极解决方案
    SqlDataReader的关闭问题
    MemberShip学习之:注册用户
    索引超出范围。必须为非负值并小于集合大小。
    利用SiteMapPath控件做论坛导航(也适合其它系统)
  • 原文地址:https://www.cnblogs.com/Pjson/p/8625665.html
Copyright © 2011-2022 走看看