问答详情
源自:7-7 Java 中的静态内部类

为什么这段使用静态内部类的程序会出错?求解答

http://img.mukewang.com/54d8cefc0001538205740299.jpg

package com.imooc.second;

public class Telephone {
	int num = 100;
	public Telephone(){
		System.out.println("com.imooc.second.Telephone");
	}
	public static class SInner(){
		
		public void test(){
			System.out.println(new Telephone().num);
		}
	}
}
如图所示,图中错误有两处,为什么会出现错误呢,完全是按照教程中左侧的代码来写的,还有如何修改啊?


提问者:_天微凉_ 2015-02-09 23:16

个回答

  • 仗剑闯江湖
    2015-02-10 00:08:25
    已采纳

    类名SInner后面的小括号是几个意思?

  • demo_h
    2015-02-10 15:49:25

    在外部类中定义一个主方法即可 静态内部类不需要外部类对象就可以直接创建 

    public class TelePhone {
    int num = 100;
    public TelePhone()
    {
    System.out.println("telephone!");
    }
    public static class SInner{
    public void test()
    {
    System.out.println(new TelePhone().num);
    }
    }
    public static void main(String[] args) {
    SInner sInner = new SInner();
    sInner.test();
    }
    }


  • Jy_z
    2015-02-10 00:42:48

    楼上已经解决了你的问题.  定义类需要加()吗?