0

JFrame类的带String的构造函数显然是public的,为什么没有继承给子类呢?

import javax.swing.*;

public class test extends JFrame
{    
    public test() {
        // TODO 自动生成的构造函数存根
    }
    public static void main(String[] args) {
        JFrame frame=new test("123");
    }
    
}

2个回答

-1

父类中的构造方法是继承的,但是子类创建对象的时候默认调用自身的隐式构造器。如果要使用父类构造器,要自己
用父类的构造函数覆盖

import javax.swing.JFrame;

public class test extends JFrame
{    
    public test(String title) {
        // TODO 自动生成的构造函数存根
        super(title);
    }
    public static void main(String[] args) {
        JFrame frame=new test("123");
    }
}

public修饰的类就代表此类可以对外开放,其他的类可以继承它,外部也可以实例化该对象。

如果不加public,则默认的修饰词是protected,代表只对同包开放。

-3

你的类名为什么是小写,编译器没报错么

该答案已被忽略,原因:不符合答题规范 - 内容不是答案,可用评论、投票替代

撰写答案

Planets