语言
喻神
随心而动
展开
-
Java中的final关键字解析
我们有时会发现jdk的源码中经常出现final这个关键字,那么它到底有什么作用呢?只是一种规范?还是说在某种场景下有性能上的优化?首先我们从字面意义上进行初步阐述,final的英文意思是:最终的,不可更改的。也就是说被final关键字修饰的“东西”至少具有某种不变的性质。事实上,我们可根据“东西”的类别来分别描述final关键字的作用。一、修饰类(非抽象类)若final关键字修饰类,则表示该类不能...原创 2018-06-16 12:26:24 · 257 阅读 · 0 评论 -
Java抽象类与接口
一、抽象类的概念通俗一点说,抽象类就是用abstract关键字进行修饰的类,不能直接实例化(为什么不能直接实例化?有些答案指出是因为抽象类中的抽象方法未实现,无法分配内存空间,为了安全,不允许直接实例化。但事实上,抽象类中可以只包含普通方法而不包含抽象方法,所以个人觉得这是由Java语法规定的,是一种设计上的需要,其目的是为了被子类继承)。一般情况下,抽象类会包含抽象方法,而抽象方法则是将普通方法...原创 2018-07-01 22:23:30 · 273 阅读 · 1 评论 -
Java构造器的调用顺序和多形性
在读到《Java编程思想》一文中的构造器部分时,觉得有几个知识点印象深刻,故在此记录一下,仅当随笔。一、构造器的调用顺序在深层继承的复杂对象中,构建器的调用顺序到底是怎样的呢。首先,我们知道衍生类(子类)在继承基础类(父类)时可以访问基础类的任何public 和 protected 成员。这意味着在使用衍生类的时候,必须能假定基础类的所有成员都是有效的。为达到这个要求,唯一的办法就是首先调用基础类...翻译 2018-07-03 00:01:15 · 322 阅读 · 2 评论