为什么JAVA中内部类前面要加static?

public class helloworld {

public static void main(String[] args) {
// TODO 自动生成的方法存根
Display display=new Display();
Shell shell=new Shell(display);
shell.setText("hello world");
shell.setSize(400,400);
shell.open();
Text text=new Text(shell,20);
text.setBounds(20,20,100,100);
text.addKeyListener(new Key());

while(!shell.isDisposed())
{
if(!display.readAndDispatch())
display.sleep();
}
display.dispose();
}

static class Key implements KeyListener{
public void keyPressed(KeyEvent e){
System.out.print(e.character);
}

public void keyReleased(KeyEvent e) {
// TODO 自动生成的方法存根

}}
}
======================
class Key 放在helloworld中,前面要加STATIC, 如果放在外面就无需加STATIC.

Java中可以有静态内部类也可没有。静态内部类是是要加static的。

    外部类可以直接  用  .  来调用静态内部类  方法和属性,这样会非常方便和便捷。

    但是静态内部类,可指向不了外部的,所以你访问不了外部的属性和方法。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-12-28
java中有四种内部类的(成员,匿名,局部,静态)

静态内部类只是其中一种,静态的内容方便调用,不需要实例化本回答被网友采纳
第2个回答  2017-12-27

需要吗? Class  A 在main中,不需要是静态的。

Class B在Test类中、也不需要静态的呀???

第3个回答  2015-01-09
无需加static,那你知道怎么调用吗??
放外面调用他需要实例化本回答被提问者和网友采纳

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网