如何在局部内部类中访问外部类的局部变量

发布网友 发布时间:2022-04-23 06:39

我来回答

3个回答

热心网友 时间:2022-06-16 18:54

在Java中,方法的局部变量位于栈上,对象位于堆上。因为局部变量的范围被*在该方法内,当一个方法结束时,栈结构被删除,该变量消失。但是,定义在这个类中的内部类对象仍然存活在堆上,所以内部类对象不能使用局部变量。除非这些局部变量被标识为最终的。final int i=8;就可以

热心网友 时间:2022-06-16 18:55

如果局部(私有)变量有set和get方法的话,可以赋值和进行值读取,如果没有这两个方法的话,那么外部类没法赋值的。
举例:
类User:
public class User {
private String username ;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
}
此时在类B中就可以通过
User user = new User();//创建对象
user.setUsername("zhangsan");//赋值
user.getUsername();//获取到值

热心网友 时间:2022-06-16 18:55

使用
NeiBuLei2.this.i 在内部类中访问外部类实例变量

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com