Java内部类
来源:互联网 发布:大学生it就业指导教案 编辑:程序博客网 时间:2024/06/07 08:04
内部类共有四种
1.static inner class静态内部类.<该类属于类本身的StaticInner.Innerinner = new StaticInner.Inner();>
a.只能够访所在类的静态的成员变量或方法
packagecom.cb.innerclass;
public class StaticInnerClass {
public static void main(String[] args) {
StaticInner.Inner inner = new StaticInner.Inner();
inner.test();
}
}
class StaticInner {
private static int a = 4;
private int b=5;
public static class Inner {
public void test() {
System.out.println(a);
// System.out.println(b);不能访问
}
}
}
2.Member inner class 成员内部类 (没有用static来修饰)<该类属于类的对象MemberInner.Innerinner = (new MemberInner()).new Inner();>
a.可以访问一切所在类的成员和方法
package com.cb.innerclass;
class MemberInner {
private int a = 4;
public class Inner {
private int a=5;
public void doSomething() {
System.out.println(MemberInner.this.a);
}
}
}
public class MemberInnerClass {
public static void main(String[] args) {
MemberInner.Inner inner = (new MemberInner()).new Inner();// 实例化
inner.doSomething();
}
}
3.LocalInner Class 局部内部类
定义在方法中,只能访问所在内中被final修饰的类型变量
class LocalInner {
publicfinal int b=3;
public voiddosomething() {
final inta=4;
class Inner{
public voidtest() {
System.out.println("HelloWorld!!!");
System.out.println(a+b);
}
}
newInner().test();
}
}
publicclass LocalInnerClassTest {
publicstatic void main(String[] args) {
LocalInnerlocalInner = new LocalInner();
localInner.dosomething();
}
}
4.匿名内部类(AnonymousInner Class)会隐式的继承一个父类或者接口
packagecom.cb.innerclass;
importjava.util.Date;
publicclass AnonymousInnerClassTest {
publicString gert(Date date) {
returndate.toLocaleString();
}
publicstatic void main(String args[]) {
AnonymousInnerClassTesttest = new AnonymousInnerClassTest();
// Stringstr=test.gert(new Date());
//System.out.println(str);
String str= test.gert(new Date() {// 生成了一个继承了Date类的一个子类的对象
publicString toLocaleString() {
return "Hello World!!!";
}
});
System.out.println(str);
}
}
- 【Java】【内部类】Java 内部类简介
- [Java] Java 内部类
- Java 内部类(成员内部类、局部内部类、静态内部类和匿名内部类)
- Java内部类(成员内部类、静态内部类、局部内部类、匿名内部类)小结
- Java内部类(成员内部类、静态内部类、局部内部类、匿名内部类)小结
- Java内部类(成员内部类、局部内部类、静态内部类、匿名内部类)
- Java内部类(成员内部类、静态内部类、局部内部类、匿名内部类)小结
- Java内部类(成员内部类、静态内部类、局部内部类、匿名内部类)小结
- Java内部类(成员内部类、静态内部类、局部内部类、匿名内部类)小结
- java的内部类、匿名内部类、局部内部类
- java内部类之成员内部类、静态内部类
- java 成员内部类 局部内部类,匿名内部类
- Java 静态内部类/内部类
- java内部类、静态内部类 小结
- Java内部类,静态内部类
- JAVA 内部类与静态内部类
- java内部类--局部内部类
- Java 内部类以及匿名内部类
- LINQ(数据库操作增、删、改及并发管理)
- Parcelable接口的使用
- jquery中交替点击事件的实现
- MAC OS系统手动安装与卸载驱动
- Log
- Java内部类
- #(井号)在C/C++的#define宏定义中的特殊用法
- Maven是什么,以及为什么要使用Maven
- netstat使用
- JavaSwing创建表格
- 在本地和远程机器上切换到过去的一个commit
- Java线程笔记
- 软件测试笔试题和面试题
- 调皮的黑客 教你如何攻击亚马逊无人机