什么是局部变量和成员变量?希望能举例,在编程里指明
2个回答
展开全部
局部变量指在程序中,只在特定过程或函数中可以访问的变量,是相对与全局变量而言的。在面向过程和面向对象编程语言中均有,是程序中最常见最常用的变量。
成员变量:在类体的变量部分中定义的变量,也称为属性。几乎只出现在面向对象编程语言中。
案例1:
void main()
{
int test = 0; //局部变量
printf("%d", test);
}
案例2:
public class Clothes
{
String id; //实例变量
private String colorType; //实例变量
private int size; //实例变量
private static String depart; //类变量
final String design="yangzi"; //常量
}
代码中的实例变量、类变量、常量都属于成员变量,那么其区分的依据是什么?这与变量的修饰符有关系,也就是上面代码中的private、static、final等修饰符。成员变量的修饰符见表5-1。
表5-1 成员变量的修饰符
修饰符 说明
public 成员变量可以被项目中的任何方法访问,建议尽量少用
protected 不在同一个包中的类不能访问,但子类可以访问
private 只能在同一个类中使用
static 类变量,其值为该类的所有对象共享,不会因类的对象不同而不同
final 最终成员变量,其值保持不变,即常量
transient 当对象被持久化时(例如写入数据库),该成员变量的值不需要保存
volatile 同步多线程访问的成员变量的值,以便使不同的线程总是得到 该成员变量的同一个值。关于线程
成员变量:在类体的变量部分中定义的变量,也称为属性。几乎只出现在面向对象编程语言中。
案例1:
void main()
{
int test = 0; //局部变量
printf("%d", test);
}
案例2:
public class Clothes
{
String id; //实例变量
private String colorType; //实例变量
private int size; //实例变量
private static String depart; //类变量
final String design="yangzi"; //常量
}
代码中的实例变量、类变量、常量都属于成员变量,那么其区分的依据是什么?这与变量的修饰符有关系,也就是上面代码中的private、static、final等修饰符。成员变量的修饰符见表5-1。
表5-1 成员变量的修饰符
修饰符 说明
public 成员变量可以被项目中的任何方法访问,建议尽量少用
protected 不在同一个包中的类不能访问,但子类可以访问
private 只能在同一个类中使用
static 类变量,其值为该类的所有对象共享,不会因类的对象不同而不同
final 最终成员变量,其值保持不变,即常量
transient 当对象被持久化时(例如写入数据库),该成员变量的值不需要保存
volatile 同步多线程访问的成员变量的值,以便使不同的线程总是得到 该成员变量的同一个值。关于线程
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询