成员变量和局部变量


1.


作用域不同: 成员变量的作用域是整个类,整个类可见,局部变量的作用域是声明赋值所在的方法内。


初始值不同: 成员变量有默认初始值,局部变量必须赋初值,才能访问。


2.


        在同一方法中不允许局部变量同名,不同方法中可以有同名局部变量。


        局部变量可以和成员变量同名,并且在使用时,局部变量具有更高的优先级。


使用方法的好处优点:


方便程序调用,不需要知道类的内部实现,节约时间,代码重用,提高效率。


3.


        基本数据类型:不同的变量会分配不同的存储空间,存储空间中,存储的是该变量的值;


赋值操作传递的是变量的值,改变一个变量的值,不会影响另一个值。


        引用数据类型:赋值是原对象的引用(内存地址),传递给另一个引用,2个引用指向同一个数组,也就是指向同一内存空间。


有参方法和无参方法


4.方法重载: 在同一个类中,方法名相同,参数列表(参数的格式或类型)不同。


5.


关键字this的用法: this哪个对象调用就指的是哪个对象


带参构造中: this():调用无参构造方法,必须是第一句代码。


构造方法中: this.name=name;构造方法中,为成员变量赋值


普通方法中 this其他普通方法();


基本数据类型:不同的变量会分配不同的存储空间,


存储空间中,存储的是该变量的值;


赋值操作传递的是变量的值,改变一个变量的值,不会影响另一个值。


引用数据类型:赋值是原对象的引用(内存地址),传递给另一个引用,


2个引用指向同一个数组,也就是指向同一内存空间。


6.


注意:如果自己定义了一个或多个构造方法,系统不会再自动添加默认构造方法。


this关键字 是对一个对象的默认引用,每个实例方法内部,都有一个this引用变量,指向调用这个方法的对象。


this.name 调用成员变量


this.show();成员方法


this();调用重载的构造方法,只能在构造方法中使用, 必须是构造方法的第一句。


因为this是在对象内部指向自身的引用,所以this只能调用实例变量,实例方法和构造方法。


不能使用this调用,带有static的类变量和类方法。也不能调用局部变量。


7.


方法是存在于类中的,


其他类如果想用另一个类中的方法时,有两种访问方式:


1.要先创建类的对象,再用对象名.方法名()去调用,执行了方法体的内容。


2.可以不用创建类的对象,类名.方法名()调用。


这种方式需要我们把方法定义为:静态方法


public static void/int getNUm(){ }//静态方法中使用的成员变量必须为静态,非静态的不可用


静态的:就是类的 类名. 调用


非静态的: 属于对象的实例 需要先创建对象,再通过 对象名调用