标签:
java中有一个内部类的概念,由于之前一直比较忙,没有单独拿出时间总结一下,今天我就把内部类的相关知识进行一下汇总,如果有不足之处,欢迎批评指正。
1)java内部类的概念。
在一个类的的内部定义的类被称为java的内部类
2)内部类的分类
根据内部类的位置不同,可以大致分为一下两类:
1.普通内部类又叫成员内部类,在方法体的外面定义的内部类
其中普通内部类又分为静态(static修饰的内部类)和非静态(非static修饰的内部类)
2.局部内部类又叫方法内部类,在方法体中定义的内部类
其中普通内部类又分为静态(static修饰的内部类)和非静态(非static修饰的内部类)以及匿名内部类。
3)每种内部类的详细详解
1.普通内部类
package com.xiaohao.test;
import java.util.Date;
public class Test12 extends Date{
public static void main(String[] args) {
new Test12().test();
}
public void test(){
System.out.println(getClass().getName());
System.out.println(getClass().getName());
System.out.println(super.getClass().getName());
System.out.println(this.getClass().getSuperclass().getName());
System.out.println(super.getClass());
String str1=new String("Hello World");
String str2=new String("Hello World");
StringBuffer str3=new StringBuffer("Hello World");
StringBuffer str4=new StringBuffer("Hello World");
System.out.println(str1.equals(str2));
System.out.println(str3.equals(str4));
new Object()
// long startTime=System.currentTimeMillis();
// for(int i=0;i<50000;i++)
// {
// str1=str1+i;
// }
// long endTime=System.currentTimeMillis();
// System.out.println("String一共花费时间为:"+(endTime-startTime)+"ms");
// startTime=System.currentTimeMillis();
// for(int i=0;i<50000;i++)
// {
// str3=str3.append(i);
// }
// endTime=System.currentTimeMillis();
// System.out.println("StringBuffer一共花费时间为:"+(endTime-startTime)+"ms");
String str="a,b,c,d,e,f";
String[] strArray=str.split(",");
System.out.println(strArray.length);
String s1="a";
String s2=s1+"b";
String s3="a"+"b";
System.out.println(s2=="ab");
System.out.println(s3=="ab");
int a=Test12.test2();
System.out.println(a);
int i=100;
try{
return ;
}catch(Exception e){
}finally{
System.out.println(i);
}
}
static int test2(){
int i=10;
try{
int b=10;
return i;
}
finally{
++i;
}
}
}
标签:
原文地址:http://www.cnblogs.com/xiohao/p/4265516.html