java 内部类 构造函数_Javase内部类:非静态内部类的子类的构造器

题目描述

非静态内部类的子类的构造器如何编写

题目来源及自己的思路

非静态内部类的子类构造应该显式用外部类的实例调用非静态内部类的构造方法

相关代码

// 请把代码文本粘贴到下方(请勿用图片代替代码)

package InnerClass;

public class ChildInner {

public ChildInner() {

System.out.println("这是外部类的构造方法");

}

public class Iiii{

public Iiii() {

System.out.println("这是内部类的构造方法");

}

}

}

package InnerClass;

import InnerClass.ChildInner;

public class Test extends ChildInner.Iiii{

public Test(ChildInner c) {

c.super();

}

public static void main(String[] args) {

ChildInner c = new ChildInner();

Test t = new Test(c);

}

}

你期待的结果是什么?实际看到的错误信息又是什么?

我理解的是Test的构造器中的super就是Iiii的构造器,但是当我把c.去掉时,编译出现错误。错误代码:No enclosing instance of type ChildInner is available due to some intermediate constructor invocation。请问,是我理解错了吗?c.super()这段代码到底是什么意思?

问题描述

问题出现的环境背景及自己尝试过哪些方法

相关代码

// 请把代码文本粘贴到下方(请勿用图片代替代码)

你期待的结果是什么?实际看到的错误信息又是什么?

题目描述

题目来源及自己的思路

相关代码

// 请把代码文本粘贴到下方(请勿用图片代替代码)

你期待的结果是什么?实际看到的错误信息又是什么?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值