成员变量:
1、在类中方法外定义的变量,又称之为类成员变量
2、成员变量可以不用手动给值,将来我们要通过类创建对象,而对象是在堆内存中创建出来的,这些成员变量会有系统赋予默认值。
3、成员变量随着对象在堆内存的创建而创建
局部变量:
1、方法定义的小括号中或者方法的内部定义的变量,称之为局部变量
2、方法调用在栈中调用的,局部变量随着方法的调用而在栈中创建,而栈中的变量是不会有默认值的
又因为变量必须要有初始化值才能使用,所以局部变量在定义的时候,就需要给值。
二者的区别
在类中的位置不同
成员变量 类中方法外
局部变量 方法内或者方法声明上
在内存中的位置不同
成员变量 堆内存
局部变量 栈内存
生命周期不同
成员变量 随着对象的存在而存在,随着对象的消失而消失
局部变量 随着方法的调用而存在,随着方法的调用完毕而消失
创建对象的语句定义格式:类名 对象名 = new 类名();
构造方法:
1、方法名和类名一样,
若没有返回值,就是该类的构造方法,用于创建对象的时候调用
如果写了返回值,那么就是一个普通的方法,将来需要通过对象名调用
2、一个类中,如果我们自己不写构造方法,那么系统默认会提供一个方法名与类名一样,无参无方法实现的一个构造方法
3、如果我们自己明确定义了构造方法(无论是有参还是无参),系统永远不会提供默认的构造方法了。
4、构造方法也可以发生重载, 使用哪一个构造方法根据创建对象时,构造方法传入的参数来决定的。
初始化值不同
成员变量 有默认的初始化值
局部变量 没有默认的初始化值,必须先定义,赋值,才能使用
标签:调用,变量,构造方法,成员,局部变量,重载,方法
From: https://www.cnblogs.com/qiwei-bigdata/p/18337481