Java之内部类的初级应用详解(附源码)
Posted mufeng_慕枫
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java之内部类的初级应用详解(附源码)相关的知识,希望对你有一定的参考价值。
示例源码
在本节中我们将讲述内部类应用中的一个更典型的情况:外部类将有一个方法,该方法返回一个指向内部类的引用,就像在 to()和 contents()方法中看到的那样。
package com.mufeng.thetenthchapter;
public class Parcell2
class Contents
private int i = 11;
public int value()
return i;
class Destination
private String label;
public Destination(String whereTo)
// TODO Auto-generated constructor stub\\
label = whereTo;
String readLabel()
return label;
public Destination to(String s)
return new Destination(s);
public Contents contents()
return new Contents();
public void ship(String dest)
Contents c = contents();
Destination d = to(dest);
System.out.println(c.value());
System.out.println(d.readLabel());
public static void main(String[] args)
Parcell2 p = new Parcell2();
p.ship("Tasmania");
System.out.println("--------我是分割线----------");
Parcell2 q = new Parcell2();
Parcell2.Contents c = q.contents();// (或者 q.new Contents())
Parcell2.Destination d = q.to("Borneo");// (或者 q.new
// Destination("Borneo"))
System.out.println(c.value());
System.out.println(d.readLabel());
输出结果
11
Tasmania
--------我是分割线----------
11
Borneo
源码解析
如果想从外部类的非静态方法之外的任意位置创建某个内部类的对象,那么必须像在 main()方法中那样,具体地指明这个对象的类型: OuterClassName.InnerClassName。
以上是关于Java之内部类的初级应用详解(附源码)的主要内容,如果未能解决你的问题,请参考以下文章