这是一副在网络上流传多年的图片,你能看懂吗?
什么!你用的Java版本叫“Tiger🐯”?
作为一个Java初学者,很多同学的精力都放到了Java语言本身的语法当中,或是开始纠结于各种算法,或是专研OO思想,还有人对各种设计模式趋之若鹜,总之开启了各种“高大上”的装逼模式……
少年人,你可知道:
“生活不止眼前的苟且,还有诗和远方的田野。”
———————— 高晓松
今天就让我们先放下冷冰冰的代码,虚无缥缈的编程思想,来看点关于Java你应该知道的一些“趣知识”吧。
(五):注解与XML的比较
在日常开发中,我们大家什么时候感受使用注解最多呢?当然是在各种JavaEE框架的配置中,我们很明显感受到以前很多框架的老版本都是使用的XML文件做配置,而今很多框架的新版本都改成了支持注解配置的方式。
那么,注解真的可以用来完全替代XML吗?它们各自的优势是什么?什么时候我们要使用注解配置?什么时候使用XML配置呢?
(四):自定义注解的运行时解析
在本系列的头三个讲解中,我们学习了什么是注解、如何定义注解、以及如何配置注解。那么当做好了这一切,这样的注解在实际中又有什么样的作用呢?这就是我们今天要讨论的:让编写期配置在Java文件的注解影响运行期的效果,即下图的第三步。
(三):自定义注解的配置使用
在注解Annotation全解析(二):自定义注解的定义一文中,
我们学会了定义一个自己的注解。
那么,定义好了一个注解该如何使用呢?这就是我们接下来要探讨的。
(二):自定义注解的定义
在注解Annotation全解析(一):我不是注释一文中,我们对于注解有了一个基本的认识:注解其实就是给我们代码中的一些关键节点(包、类、方法、参数、属性等)打上一些标记,然后在编译期或运行期通过判断这些标记来执行一些指定操作。那么通过这个流程我们可以分析出注解的使用结构是:
要想完全学会注解,光靠用别人定义的注解是不够的,所以我们要学会自己定义注解。另外,请在学习的下面内容的时候,打开你的Eclipse跟着内容进行编码。
(一):我不是注释
我们在IDE(集成开发环境,比如:Eclipse)工具中开发程序时,经常会使用自动代码生成的方式完成一些重写操作。这个时候,我们常常发现工具会在重写方法上面会自动出现一行奇怪的代码:@Override。
我们试着保留它,或是删掉它,结果发现这个东西对我们重写的语法似乎并没有什么影响。久而久之,大家也就习惯了它的存在,并忽略了它,甚至误认为它不是Java代码而是Eclipse自己提供的一个东东,不关Java的事情。
今天,我们来认识认识这个语法,它叫做:注解———Annotation。
向上转型,向下转型,还在头疼?
在学习Java编程中,最头疼事情之一就是数据类型转换。有时候它在不经意之间就完成了(自动类型转换),有时候却又要求程序员必须手动指定(强制类型转换)。基本数据类型,转换规则还可以通过类型本身空间大小和精度分析明白,而且最多就是丢失精度但运行起来至少是不会报错。可是面对引用数据类型,这个“坑”就大了:有自动转的,有强制转的,居然还有强制都转不了的;自动转了的却把对象身上的方法丢了看不见;强制转的编译过了运行却可能报异常。
一口老血,有木有?更要命的是,这个转型还相当的重要,Java中的动态多态还非它不可了。你说要命不要命?没关系,今天就让我们花点时间聊聊它,搞定它!