2021.06.09学习理解
1.对于域的理解
今天看了一下java核心技术卷1的内容,看到域的时候觉得有些难以理解,然后在网上查找了相关的内容发现英文原版的域的单词是field,确实可以顺势翻译为域,但是对于我觉得对于萌新来说,域这个词过于晦涩,也比较难以理解(萌新指自己),用比较常用的词语可以进一步将域理解为属性、字段、和变量等等内容,所以宽泛一点的说,域既是java语言中的田地,如果你要种田(创建方法,属性等),你就要先有田(域)然后再给你分配你所属的田地,等你要种的时候你就可以用这块儿田了,这么一说,field这个词用它的另外一个意思反而更通俗易懂了,静态域就是指你在创建方法和属性的时候给对应的方法和属性分配了内存空间,等你在类里需要使用这些方法和属性的时候你就可以调用这些内存空间地址值来进行相关的调用了(也不知道理解的对否)
2.final关键字
final关键字还是比较容易理解的,当final修饰类时表明该类不能被更改(继承树中的叶子类);当final修饰方法时表明该方法不能被重写,但是可以在继承该类的子类中使用该方法;当final修饰属性时,在该属性被初始化后即不可改变其属性值,其初始化可以在两个地方:一是其定义处,也就是说在 final 属性定义时直接给其赋值;二是在构造函数中。这两个地方只能选其一,要么在定义时给值,要么在构造函数中给值,不能同时既在定义时赋值,又在构造函数中赋予另外的值。
3.静态域、静态常量与静态方法
静态域很好理解,即开辟一块儿内存空间,每个类中只有一个这样的空间,在后面的方法中调用该静态域时,所放的内容都在该内存空间中,静态域属于类,不属于任何对象,对象调用不了它,只能由类调用 静态常量,当我们对一个属性使用static进行修饰时,在我们后续调用中,我们无需创建对象来对该属性进行调用,可以直接使用类.属性获取该属性的值 静态方法,静态方法和静态常量的使用类似,只能由该类直接进行调用,而不能使用引用的对象对该方法进行调用,静态域不能访问实例域,但是可以访问自身的静态域。 在下面两种情况下使用静态方法: 1.一个方法不需要访问对象状态,其所需参数都是通过显示参数提供(如 Math.pow)。 2.一个方法只需要访问类的静态域(如 Student,getNextid())。 最常见的静态方法是main方法:public static void main(String[] args){}。
小结:
内存的理解是否透彻对于学习JAVA十分重要,大部分的调用都是调用的内存地址,而不会直接对内存空间进行调用或更改