说到作用域,就是一个变量能在哪一个范围内被使用。
原来在学习Java的时候就很粗简地学习一点,但到了Android的开发的时候,各种变量、方法甚至是类的套用让人眼花缭乱的。所以再来把这个作用域的问题重新理一理,下面的代码都是在Java中实现。
public class Test{
private int age = 1;
public int getAge(){
int b = 2
return age + b;
}
}
在上面这一段小小的代码里getAge函数里的age其实就是在函数外定的age。这就是说,在一个类中,函数外定义的变量,是能在函数内部被使用的。反过来,函数内部被定义了一个int型的变量b,就不能被函数以外的部份使用。
//先已经定义了一个Cat类
public class Cat{
private int age;//先定义一个私有的整型变量age
public Cat(int age){
this.age = age;//this可以理解成是Cat类在内存中的位置。this.age指的就是Cat类中的私有变量的age。而参数,也就是括号中的age,它的作用范围只限于这个函数中,因为他是在函数的内(包括函数的参数部分)被定义的。
}
public int getNewAge(){
int age = 2;
return age;//这里的age指的是getNewAge()函数内定义的age
}
}
public int getAge(){
return age;//这里的age指的是类内的私有变量
}