课程
/后端开发
/Java
/Java入门第二季 升级版
第18行:Inner i= hello.new Inner(); 不太懂 1,创建内部类对象为什么要使用外部类对象? 2,如果有多个外部类对象,那创建内部类对象的时候是不是随便用一个外部类对象就可以了?
2019-02-19
源自:Java入门第二季 升级版 7-5
正在回答
内部类可以随意访问外部类的所有属性和方法,外部类不可以直接访问内部类的属性和方法,这是规定
静态方法无法访问非静态方法,给内部类加一个static就OK了
//外部类HelloWorld
public class HelloWorld {
// 内部类Inner,类Inner在类HelloWorld的内部
public static class Inner {
// 内部类的方法
public void show() {
System.out.println("welcome to imooc!");
}
public static void main(String[] args) {
// 创建内部类对象
Inner i = new Inner();
// 调用内部类对象的方法
i.show();
抓住一只蝉
qq_慕沐4213791 回复 抓住一只蝉
静态方法无法访问非静态成员变量(你可以吧Inner()看成一个成员变量)
内部类中静态内部类不需要使用外部类对象就可以直接创建。你给出的例子应该是成员内部类的创建。我个人把成员内部类理解为一个特殊的成员变量,你要使用成员内部类时就需要 对象.(成员内部类)。
不随便啊,建议你看下成员内部类那一节课程
举报
课程升级!以终为始告别枯燥,在开发和重构中体会Java面向对象编程的奥妙
2 回答使用外部类对象创建内部类对象???
3 回答为什么在创建内部类之前要创建外部类对象?
2 回答创建内部类对象
5 回答// 创建内部类对象
1 回答创建内部类 对象