2021.11.20学习记录

一、成员变量与局部变量

成员变量,为定义在类里面,方法之外的变量,也叫全局变量

局部变量,为定义在方法里面的变量,或者定义方法时传入的参数

1)成员变量属于对象,储存在堆内存,局部变量属于方法,储存在栈内存

2)成员变量在创建类时成立,随着类的结束而结束,局部变量随着方法的运行而存在,随着方法的释放而销毁

3)成员变量的初始化值为null,局部变量没有初始化值

注:成员变量与局部变量的名字可以一样,类似于传入的参数名与接受的变量名一样

二、构造方法

构造方法,是创建一个类时默认存在的方法,,也是必有得方法,当不使用构造方法时可以不写

写法:public 类名(){}

构造方法没有返回值类型,在实例化对象时,就会直接调用构造方法

构造方法会初始化变量的值

三、this关键字

this关键字,可以调用方法、属性、对象,其中this关键字使用就近原则,谁调用,就使用谁的参数、变量、属性

四、值传递与引用传递

值传递:当x变量初始化以后,若将x = mx,则mx的值会和x一样,但是若改变mx的值,不会影响到x的值

引用传递:当d = duck 时,会将d的地址以及调用对象都传递给duck,但是此时,若将duck此时调用的对象的值改变,会使得d的值也改变

String传递1:与引用传递一样,会同时将地址和存储对象都复制给对方,但是,若将sname的值改变为另一个值,则会引起sname的存储地址改变,开创一个新的存储区和新的地址,其结果和值传递类似

String传递2:调用多个对象时,会使得在堆内存里存储的依然是地址,此时改变结果的值,只是改变地址,从而按址寻找其他对象,之前的对象会因为未被调用而成为垃圾

五、一对一关系

两个对象之间的调用方法时出现的关系,即调用的方法相同,而传入的参数为对应的对方是,此时;两者之间为一对一的双向对应,如果一样,则为单向对应;

六、static关键字

当使用的修饰符为static时,此时的方法为静态方法,变量为静态变量,

1)静态变量或方法不属于对象,但是依赖类

2)静态变量为全局变量,生命周期与类相同

3)静态方法存储在方法区中

4)静态方法为共享方法,为整个类调用,但是只有一份

5)静态方法或变量不建议使用对象调用,最好使用类调用

6)静态方法属于类

7)静态方法不能访问非静态方法

猜你喜欢

转载自blog.csdn.net/taowithsnow/article/details/121440838