---------------------- android培训、java培训、期待与您交流! ------------------------
看完视频,感觉线程部分对于andriod的开发是很重要的,而第一遍的学习也是学的晕晕乎乎
于是,有时间就再次复习一下:
这次的收获是内部类如何访问外部类变量的问题:不管是访问外部类的属性,还是访问方法的局部变量
一定要牢记一点------先有外部类对象,然后才有内部类对象,创建内部类对象的语法是new 外部类名字.new 内部类名字
如果是内部类访问外部类的属性,这个属性要加上static关键字
如果是访问方法的局部变量,这个局部变量要加上final关键字
代码如下:
public class TraditionalThread {
//实例化内部类时,一定要先实例化外部类
//static outputName outputer=new TraditionalThread().new outputName();//第一种方法,把被访问的属性加上static关键字
public static void main(String[] args) {
final outputName outputer=new TraditionalThread().new outputName();//第二种方法,把被访问的局部变量加上final关键字
// 创建一个线程
new Thread(new Runnable() {
@Override
public void run() {
while(true){
try {
Thread.sleep(100);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
//方法内的内部类要访问外部类的方法
outputer.output("zhangxiaoxiang");
}
}
}).start();
new Thread(new Runnable() {
@Override
public void run() {
while(true){
try {
Thread.sleep(100);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
//方法内的内部类要访问外部类的方法
outputer.output("lihuoming");
}
}
}).start();
}
// 内部类
class outputName {
void output(String name) {
for (int i = 0; i < name.length(); i++) {
System.out.print(name.charAt(i));
}
System.out.println();
}
}
}
---------------------- android培训、 java培训、期待与您交流! ------------------------
本文详细解析了Android开发中内部类如何访问外部类变量的关键概念,包括属性访问和局部变量访问的注意事项,并通过代码示例展示了实际应用。重点突出了静态属性和final局部变量的使用场景。
1091

被折叠的 条评论
为什么被折叠?



