Thinking in Java
「已注销」
这个作者很懒,什么都没留下…
展开
-
final关键字
数据final关键字用于数据时,代表这个数据是一个常量,不可改变,这个数据通常属于基本数据类型。但有几点需要注意: 当final修饰引用数据时,代表的是引用不变,一旦引用指向一个对象,就无法把他改为指向另一个对象,然而对象自身是可以更改的。原创 2017-09-26 19:57:58 · 289 阅读 · 0 评论 -
协变返回类型
Java进行方法重写有一下几个要求: 1、重写的方法和被重写的方法必须具有相同方法名称、参数列表和返回类型。 2、重写方法不能使用比被重写的方法更严格的访问权限。 但在Java SE5中添加了协变返回类型,它表示子类中的重写方法可以返回基类方法返回类型的子类。public class CovariantReturn { /* * 协变返回类型: * 表示在原创 2017-09-27 21:02:30 · 457 阅读 · 0 评论 -
Java中的初始化过程
Java中变量初始化顺序:1.静态变量在类加载时初始化2.将分配给对象的存储空间初始化成二进制的0,即先将所有的非静态成员变量初始化成03.如果有父类,先调用父类构造方法4.按照声明的顺序调用初始化成员变量5.调用导出类的构造方法主体具体例子可以看下面这段代码:public class InitOrder { public static void main(String[] args原创 2017-10-05 14:21:44 · 381 阅读 · 0 评论 -
匿名内部类
匿名内部类只能访问final局部变量,但可以访问外部类的普通成员变量。public class InnerClass { public static void main(String[] args) { Outer o = new Outer(); Inner i = o.method(1); i.print(); }}class Ou原创 2017-10-05 16:08:07 · 286 阅读 · 0 评论 -
正则表达式
通过static Pattern.complie(String regex)方法来编译正则表达式,它会根据传入的String类型的正则表达式生成一个Pattern对象,然后将想要检索的字符串传入Pattern对象的matcher()方法,生成一个Matcher对象,通过该Matcher对象的一些方法对字符串进行处理:boolean matches() 判断整个字符串是否都匹配boolean lo原创 2017-10-24 15:54:23 · 401 阅读 · 0 评论 -
RTTI
RTTI,英文全称Run-Time Type Identification,即运行时类型识别,我们常用的多态就是基于RTTI实现的。RTTI的功能主要有Class类实现。 在Java中,所有的类都是在对其第一次使用时,动态加载到JVM中的。当程序创建第一个对类的静态成员的引用是,就会加载这个类,所以构造器也是静态的,即使它并没有声明成static。 在程序运行时,类加载器会先检查这个类的Clas原创 2017-10-24 18:03:55 · 644 阅读 · 0 评论