内部类---静态内部类和非静态内部类

原创 2015年11月17日 21:31:02

package com.dong.test;


/**
 * 外部类
 *
 */
public class OutClass {
private static String name;


static {
System.out.println("static OutClass");
}


public OutClass() {
System.out.println("c OutClass");
}


/**
* 非静态内部类
*
*/
public class InClass1 {
private String age1;


{
age1 = "";
System.out.println("unstatic InClass1");
}


public InClass1() {
System.out.println("c InClass1");
}
}


/**
* 静态内部类
*
*/
public static class InClass {
private static String age;


static {
System.out.println("static InClass");
}


public InClass() {
System.out.println("c InClass");
}
}


public static void say() {
// System.out.println("name:" + name);
System.out.println("name:" + name + " age:" + InClass.age);//此行代码才会初始化InClass
}


public void say1() {
// System.out.println("name:" + name);
  System.out.println("name:" + name + " age1:" + new InClass1().age1);//此行代码才会初始化InClass1
}


}



package com.dong.test;


public class Test {

public static void main(String[] args)throws Exception{

// Class.forName("com.dong.test.OutClass");
OutClass out = new OutClass();
// out.say1();


OutClass.InClass1 in1 = out.new InClass1();

//  OutClass.InClass in = new OutClass.InClass();


}


}

相关文章推荐

Android 非静态内部类导致内存泄漏原因深入剖析

Android  非静态内部类导致内存泄漏原因深入剖析背景上周发现蘑菇街IM-Android代码里面,一些地方代码编写不当,存在内存泄漏的问题,在和疯紫交流的过程中,发现加深了一些理解,所以决定写一下...

非静态的内部类会持有外部类的一个隐式引用 造成内存泄露

Activity是如何泄漏的 只要非静态的匿名类对象没有被回收,MainActivity就不会被回收,MainActivity所关联的资源和视图都不会被回收,发生比较严重的内存泄漏。 [ja...

面向对象的陷阱——非静态内部类的陷阱

3、非静态内部类的陷阱        内部类是Java提供的一个常用语法。内部类能提供更好的封装,而且它可以直接访问外部类的private成员,因此在一个特殊场合下更常用。 3、1 非静态内部类的构造...

非静态内部类

源代码: public class Java24 { String str="外部类中的数据!"; class JavaE{ String str="内部类中的数据!"...

非静态的内部类会持有外部类的一个隐式引用

只要非静态的匿名类对象没有被回收,MainActivity就不会被回收,MainActivity所关联的资源和视图都不会被回收,发生比较严重的内存泄漏。 要解决MainActivit...

非静态内部类Handler类引起内存泄露

最近在项目中使用延时Handler做Splish页面的跳转。 new Handler().postDelayed(new Runnable() { @Override pu...

避免使用非静态内部类,这会导致Context泄露

【转载:http://www.cnblogs.com/kissazi2/p/4121852.html】 思考下面代码 1 public class SampleActivi...

非静态内部类可能导致的内存泄漏及其优化

转自http://blog.csdn.net/lfdfhl/article/details/45696165 [java] view plain copy   p...

利用反射机制获得非静态内部类之getConstructor的用法探索

来源: http://blog.163.com/qhasilver@126/blog/static/161553399201291311119821/ 提问关于反射机制拿到内部类的构造方法的问题。总...

Android内存泄漏(非静态内部类创建静态实例造成的内存泄漏)

Android内存泄漏(非静态内部类创建静态实例造成的内存泄漏)
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:内部类---静态内部类和非静态内部类
举报原因:
原因补充:

(最多只允许输入30个字)