java面试强基(13)
创始人
2024-02-22 07:42:52
0

  前文链接(61条消息) java面试强基(12)_一个风轻云淡的博客-CSDN博客icon-default.png?t=M85Bhttps://blog.csdn.net/m0_62436868/article/details/128047427?spm=1001.2014.3001.5501

何为反射?反射机制优缺点? 

​ 它赋予了我们在运行时分析类以及执行类中方法的能力。通过反射你可以获取任意一个类的所有属性和方法,你还可以调用这些方法和属性。

  • 优点 : 可以让咱们的代码更加灵活、为各种框架提供开箱即用的功能提供了便利
  • 缺点 :让我们在运行时有了分析操作类的能力,这同样也增加了安全问题。比如可以无视泛型参数的安全检查(泛型参数的安全检查发生在编译时)。另外,反射的性能也要稍差点,不过,对于框架来说实际是影响不大的。

反射的有哪些应用场景? 

​ 像 Spring/Spring Boot、MyBatis 等等框架中都大量使用了反射机制。

​ 这些框架中也大量使用了动态代理,而动态代理的实现也依赖反射。

​ 使用 Spring 的时候 ,一个@Component注解就声明了一个类为 Spring Bean 呢?为什么你通过一个 @Value注解就读取到配置文件中的值呢?究竟是怎么起作用的呢?这些都是因为你可以基于反射分析类,然后获取到类/属性/方法/方法的参数上的注解。你获取到注解之后,就可以做进一步的处理。

 

什么是注解?

Annotation (注解) 是 Java5 开始引入的新特性,可以看作是一种特殊的注释,主要用于修饰类、方法或者变量。

注解只有被解析之后才会生效,常见的解析方法有两种:

  • 编译期直接扫描 :编译器在编译 Java 代码的时候扫描对应的注解并处理,比如某个方法使用@Override 注解,编译器在编译的时候就会检测当前的方法是否重写了父类对应的方法。
  • 运行期通过反射处理 :像框架中自带的注解(比如 Spring 框架的 @Value 、@Component)都是通过反射来进行处理的。

什么是序列化?什么是反序列化?

如果我们需要持久化 Java 对象比如将 Java 对象保存在文件中,或者在网络传输 Java 对象,这些场景都需要用到序列化。

简单来说:

  • 序列化: 将数据结构或对象转换成二进制字节流的过程。
  • 反序列化:将在序列化过程中所生成的二进制字节流转换成数据结构或者对象的过程。

对于 Java 这种面向对象编程语言来说,我们序列化的都是对象(Object)也就是实例化后的类(Class)。

seriallization 序列化 : 将对象转化为便于传输的格式, 常见的序列化格式:二进制格式,字节数组,json字符串,xml字符串。
deseriallization 反序列化:将序列化的数据恢复为对象的过程。

比如:现在我们都会在淘宝上买桌子,桌子这种很不规则不东西,该怎么从一个城市运输到另一个城市,这时候一般都会把它拆掉成板子,再装到箱子里面,就可以快递寄出去了,这个过程就类似我们的序列化的过程(把数据转化为可以存储或者传输的形式)。当买家收到货后,就需要自己把这些板子组装成桌子的样子,这个过程就像反序列 的过程(转化成当初的数据对象)。

 

//创建student对象Student student = new Student(1,"1234","小明");//序列化byte[] bytes = toBytes(student);System.out.println(bytes.length);//反序列化Student student0 = (Student) toObj(bytes);System.out.println(student0);

 

 

 人生寂寞是一种力量。人经得起寂寞,就能获得自由;耐不住寂寞,就会受人牵制。

 

相关内容

热门资讯

河北迁安:深耕“一站式”调解服... 为深入践行新时代“枫桥经验”,切实履行职工维权服务基本职责,积极探索劳动争议多元化解新路径,河北迁安...
《贵州省野生动物保护条例》构建... 人民网贵阳1月15日电 (记者王秀芳)1月15日,记者从贵州省人民政府新闻办公室举行的新闻发布会上获...
法国一教授涉嫌间谍活动被起诉,... 1月15日,就”法国一教授涉嫌间谍活动被起诉”一事,外交部发言人毛宁回应称,我们一贯反对炒作所谓的“...
人社部、财政部:扩大企业年金制... 人力资源社会保障部网站1月15日消息,近日,人力资源社会保障部、财政部印发《关于进一步做好企业年金工...
苏州法律服务业三年增速显著 2... 在1月15日举行的苏州市支持法律服务业高质量发展专题新闻发布会上,苏州市司法局交出了过去三年法律服务...
最新!唐方裕任中央政策研究室主... 据央视网消息,1月14日,中央广播电视总台举办学习宣传贯彻党的二十届四中全会精神宣讲报告会。学习贯彻...
不满16岁就不承担法律后果?湖... “年龄小”“不满16周岁” 是不是就可以不承担法律后果? 1月12日 湘潭县一名15岁违法行为人 因...
创新引入香港专业调解资源,扬州... 开班仪式 扬子晚报网1月15日讯(通讯员 扬法宣 记者 陈咏)14日,扬州涉外纠纷解决能力提升培训班...
律师用AI生成虚假案例被法院发... 大家有没有这样的经历,当你向人工智能模型提问的时候,有时会生成一些看似合理连贯,但实际上是错误捏造的...