软件开发经历了三个阶段:
(1)与配置相关的代码写在程序中;
(2)配置与程序代码独立,即程序运行时根据配置文件操作;但会造成配置文件过多时,查错困难;
(3)配置信息对用户而言无用,而且错误的修改还会导致程序异常。因此将
配置信息写回到程序中,但利用一些明显的标记来区分配置信息与程序。
Annotation简介
Annotation是JDK1.5最大的特色,利用注解的形式来实现程序的不同功能。在Java SE中支持自定义Annotation的开发,并且提供了三个最为常用的基础Annotation:@Override
、@Deprecated
、@SuppressWarnings
。
准确覆写
如果在输出对象时,希望其可以返回需要的内容,那一定要进行toString()方法的覆写。
在覆写方法时,可能由于写错方法名等错误,导致未进行覆写,并且这些错误在编译的时候,并不能被发现。所以为了告诉编译器,tostring()是被覆写的方法,就可以加上@Override
。
过期声明
假设现在有工具包,其中有一个Demo类,类中有一个fun()。在项目最初阶段,fun()非常适用。但随着技术提升,fun()显得功能不足,此时开发者有两个选择:
· 1. 直接在新版本的工具包里删除fun(),同时给出新的fun2();
· 2. 在新版本的开发包里保存fun(),但是通过某种途径告诉开发者,这个方法有问题,同时提供fun2()供开发者使用。
明显,第二种选择比较合适,可以兼顾已使用fun()的项目。这时,就可以使用@Deprecated
声明。
范例:声明过期操作
利用此操作可以很好地实现方法功能的新旧交替。
压制警告
可以压制多个警告(warning)
范例: 压制警告前
由于未指定Book的具体类型,setTitle()
显示黄色波浪线,即警告。
范例:压制警告后