javaSE
杰的博客
这个作者很懒,什么都没留下…
展开
-
最常见的 5 个 RuntimeException
下面列举几个常见的 RuntimeException。 java.lang.NullPointerException 空指针异常;出现原因:调用了未经初始的对象或者是不存在的对象。 java.lang.ClassNotFoundException 指定的类找不到;出现原因:类的名称和路径加载错误;通常都是程序 试图通过字符串来加载某个类时可能引发异常。 java.lang.NumberFor...原创 2020-02-28 20:35:00 · 1273 阅读 · 0 评论 -
Java的GC什么时候回收垃圾
在 Java,C#等语言中,比较主流的判定一个对象已死的方法是:1. 可达性分析析(Reachability Analysis)。 1.所有生成的对象都是一个称为“GC Roots”的根的子树。从GC Roots开始向下搜索,搜索所经过的路径称为引用链,当一个对象到GC Roots没有任何用链可以到达时,就称这个对象是不可引用的,也就被GC回收了。 2.无论是引用计数器还是可达性分析,判定对象是否...原创 2020-02-21 20:05:38 · 1657 阅读 · 0 评论 -
重载(overload)和重写(override)的区别?重载的方法能否根据返回类型 进行区分?
方法的重载和重写都是实现多态的方式,区别在于前者实现的是编译时的多态性,而后者实现的是运行时的多态性。重载发生在一个类中,同名的方法如果有不同的参数列表(参数类型不同、参数个数不同或者二者都不同)则视为重载;重写发生在子类与父类之间,重写要求子类被重写方法与父类被重写方法有相同的返回类型,比父类被重写方法更好的访问,不能比父类被重写方法声明更多的异常。重载对返回类型没有特殊的要求 方法重载的规则:...原创 2020-02-20 09:12:40 · 175 阅读 · 0 评论 -
抽象类(abstract class)和接口(interface)有什么异同?
不同: 抽象类: 抽象类中可以定义构造器 可以有抽象方法和具体方法 接口中的成员群都是public的 抽象类中可以定义成员变量 有抽象方法的类必须被声明为抽象类,而抽象类未必有抽象方法 抽象类中可以包含静态方法 一个类只能继承一个抽象类 接口: 接口中不能定义构造器 方法全部都是抽象方法 抽象类中的成员可以是private、默认、protected、public 接口中定义的成员变量实际上都是常...原创 2020-02-18 20:28:05 · 212 阅读 · 0 评论 -
值传递和引用传递
1.值传递:只要是基本数据类型传递就是值传递,传递的就是值 package arrayDemo; public class Demo1 { public static void main(String[] args) { int b =20; change(b);// 实参 实际上的参数 System.out.println(b); } public static void change(int...原创 2020-02-18 20:16:27 · 388 阅读 · 0 评论