- 反射
所谓反射,是java在运行时进行自我观察的能力,通过class、constructor、field、method四个方法获取一个类的各个组成部分。在Java运行时环境中,对任意一个类,可以知道类有哪些属性和方法。这种动态获取类的信息以及动态调用对象的方法的功能来自于反射机制。
正射:一般情况下,我们使用某个类时必定知道它是什么类,是用来做什么的。于是我们直接对这个类进行实例化,之后使用这个类对象进行操作,如 A a=new A()
反射:反射就是在运行时才知道要操作的类是什么,并且可以在运行时获取类的完整构造,并调用对应的方法
获取类的 Class 对象实例-》根据 Class 对象实例获取 Constructor 对象-〉使用 Constructor 对象的 newInstance 方法获取反射类对象-》获取方法的 Method 对象-〉利用 invoke 方法调用方法 - ==和equals的区别
对于基本类型,==比较的是值;对于引用类型,比较的是地址;equals不能用于基本类型的比较;如果没有重写equals,equals就相当于;如果重写了equals方法,equals比较的是对象的内容 - 普通类和抽象类的区别
抽象类不能被实例化;抽象类可以有抽象方法,只需申明,无须实现;有抽象方法的类一定是抽象类;抽象类的子类必须实现抽象类中的所有抽象方法,否则子类仍然是抽象类;抽象方法不能声明为静态、不能被static、final修饰。 - 抽象类和借口的区别
接口:接口使用interface修饰;接口不能实例化;类可以实现多个接口;
抽象类:抽象类使用abstract修饰;抽象类不能被实例化;抽象类只能单继承;抽象类中可以包含抽象方法和非抽象方法,非抽象方法需要有方法体; - 序列号以及使用场景
序列化就是一种用来处理对象流的机制。将对象的内容流化,将流化后的对象传输于网络之间。序列化是将对象转换为容易传输的格式的过程。
对象序列化的最主要目的就是传递和保存对象,保存对象的完整性和可传递性;譬如通过网络传输或者把一个对象保存成本地一个文件的时候,需要使用序列化。 - 深拷贝和浅拷贝
浅拷贝:仅仅克隆基本类型变量,不克隆引用类型变量;
深克隆:既克隆基本类型变量,又克隆引用类型变量; - throw和throws的区别
throw:作用在方法内,表示抛出具体异常,由方法体内的语句处理,一定抛出了异常
throws:作用在方法的声明上,表示抛出异常,由调用者来进行异常处理;可能出现异常,不一定会发生异常 - String、String Buffer、StringBuilder的区别
String是不可变类型,每次改变都是新建对于的对象;StringBuffer是可变类型,有锁所以是线程安全的;String Builder是可变类型,无锁线程不安全 - Jave容器collection、Map:Collection包括set、list——list元素有放入顺序,元素可重复 ,Set特点:元素无放入顺序,元素不可重复,重复元素会覆盖掉
文章来源地址https://www.toymoban.com/news/detail-425774.html
文章来源:https://www.toymoban.com/news/detail-425774.html
到了这里,关于JAVA复习的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!