浅析Java内部类在GUI设计中的作用(2)

欢迎进入Java社区论坛,与200万技术人员互动交流 >>进入

  六、静态内部类

  静态内部类是static class型的内部类,这种内部类特点是:它不能访问外部类的非静态成员。要创建静态内部类对象时候,也不需要外部类对象了,直接可以:

  new 外部类名.内部类构造方法

  来创建,给个例子:

  /**

  * 静态内部类

  *

  * @author leizhimin 2009-7-17 16:53:05

  */

  public class Outer {

  public static int i =500;

  protected static class Inner {

  int i =100;

  String name;

  Inner(String name) {

  this.name = name;

  }

  void sayHello() {

  System.out.println(“Hello ” + name);

  Outer.i++;

  }

  }

  public Inner genInner(String name) {

  return new Inner(name);

  }

  }

  class Test {

  public static void main(String[] args) {

  Outer.Inner in1 = new Outer.Inner(“1111”);

  in1.sayHello();

  System.out.println(Outer.i);

  Outer.Inner in2 = new Outer().genInner(“2222”);

  in2.sayHello();

  System.out.println(Outer.i);

  }

  }

  运行结果:

  Hello 1111

  501

  Hello 2222

  502

  Process finished with exit code 0

  七、接口内部类

  接口内部类自动都是public static的,相当于为接口定义了一种变量类型,这在java的设计中就有使用,比如在HashMap中,就有:

  static class Entry implements Map.Entry

  下面我给个例子,

  /**

  * 接口内部类

  *

  * @author leizhimin 2009-7-17 17:20:28

  */

  public interface AInterface {

  void readme();

  class Inner1 implements AInterface {

  public void readme() {

  System.out.println(“我是一个接口内部类”);

  }

  }

  }

  class Main {

  public static void main(String[] args) {

  AInterface.Inner1 in1 = new AInterface.Inner1();

  in1.readme();

  }

  }

[1][2][3][4]

要做一个积极勇敢乐观的追梦人,永远不说消极的话,

浅析Java内部类在GUI设计中的作用(2)

相关文章:

你感兴趣的文章:

标签云: