这三个Java基础知识点你一定要了解一下
这三个Java基础知识点你一定要了解一下
我们往往关注业务的开发,有时候甚至不在乎Java基础知识了,有些同学在简历写具有扎实的Java基础,但真正被问到的时候却含糊其辞,这篇文章带你梳理一下Java的一些知识点。
this指针
this关键字是什么含义呢?一开始接触Java的时候一直不理解this,this其实指的是当前对象,它是当前对象的引用,我们可以使用this指针来调用构造器
如下面的代码所示:
public class Xpp {
String s = "1";
Xpp(int petals) {
petalCount = petals;
}
Xpp(String s, int petals) {
this(petals);
this.s = s;
}
}
下面的构造方法可以通过this指针来构造第一个构造方法,但是使用this指针调用构造方法的时候,只能调用一个构造器。第二个方法在先调用构造器在进行其他的操作
除此以外,this指针的另一个作用就是区分成员变量和参数变量,比如我们这个类中有个成员变量s,在Xpp类的第二个构造方法中有个参数变量s,那么我们就可以使用this指针来修饰,this.s = s这行代码的意思就是把参数变量的s值赋值给成员变量,this指针后面跟的是成员变量的s
static
static修饰的方法是在没有创建对象的时候,通过类自身来调用。被static修饰的静态方法中不同调用非静态的方法,非静态的方法可以调用静态方法。
finalize()方法
finalize()方法是Object类提供的方法,这个方法你可能不太熟悉,但是你如果看过面试题的话你就肯定见过,因为有一道经典的面试题就是final finally finalize()有什么不同,那么finalize()方法到底是干什么的呢?它其实是在垃圾回收之前进行一些清理工作,当垃圾收集确定不再有对该对象的引用时,由对象上的垃圾收集器调用。子类覆盖的 finalize()方法来处理系统资源或执行其他清理。 finalize()方法的通常目的是在对象被不可撤销地丢弃之前执行清理操作。例如,表示输入输出连接的对象的 finalize() 方法可能会在对象被永久丢弃之前断开连接。
但是清理工作我们一般不使用finalize()方法,因为垃圾回收器不一定回收这个对象,这样finalize()方法就得不到调用
当我们做一些在对象回收前的判断工作的时候,可以重写finalize()方法来实现。
总结
这篇文章我们讲了Java的三个基础的知识点,this指针、静态方法和finalize()方法,this指针是当前对象的引用,可以调用构造方法,也可以修饰成员变量区分参数变量,静态方法是没有对象通过类对象来执行,finalize()方法是进行垃圾回收之前的调用,一般不使用这个方法,因为不确定是否进行垃圾回收。
- 点赞
- 收藏
- 关注作者
评论(0)