概述
public class TestLinkedList {
public static void main(String[] args) {
TestLinkedList ls = new TestLinkedList();
List list = new LinkedList();
for (int i = 10; i > 0; i--) {
list.add(ls.new IntModel(i));
}
}
class IntModel{
int i = 1;
public IntModel(int i){
this.i = i;
}
@Override
public String toString() {
return Integer.toString(i);
}
}
}
看代码中list.add()方法必须初始化外部类自后才可以用new初始化内部类普通的内部类对象隐含地保存了一个引用,指向创建它的外围类对象。
所以要在static方法(类加载时已经初始化)调用内部类的必须先创建外部类。
下面在说下嵌套类:如果你不需要内部类对象与其外围类对象之间有联系,那你可以将内部类声明为static。这通常称为嵌套类(nested class)。想要理解static应用于内部类时的含义,你就必须记住,普通的内部类对象隐含地保存了一个引用,指向创建它的外围类对象。然而,当内部类是static的时,就不是这样了。嵌套类意味着:
1. 要创建嵌套类的对象,并不需要其外围类的对象。
2. 不能从嵌套类的对象中访问非静态的外围类对象。
(Thinking in java)
最后
以上就是冷酷水杯为你收集整理的java 外部类静态方法访问内部类_java 外部类静态方法访问内部类的全部内容,希望文章能够帮你解决java 外部类静态方法访问内部类_java 外部类静态方法访问内部类所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复