泛型、注解、log4j

泛型:将运行阶段的类型错误提前到编译阶段。

声明泛型必须两端的一致,要么左面有,要么右边有,两边都有的两边必须一致。

泛型方法:

static 之后 返回类型之前进行声明

泛型类:

在类名之后进行声明

泛型接口:

在接口名称后进行声明

泛型关键字:

?         <?>  所表达的是 该类不能进行修改,只能获取

? extends  <? extends ***类> 必须是该类的子类

? super    <? super  ***类> 必须是该类的父类

参数化类型:parameterType

this.getClass().getGenericSuperclass()//当前运行类的父类

ParameterType

pt.getActualTypeArguments()//获取<>里面的类型,是个数组,因为可能有多个

注解:告诉编译器如何运行程序,替代配置文件。

@Deprecated

@SupperssWarnnings({ “unused”,”unchecked” })  不让编译器进行警告

@Override  复写父类方法

@interface,不能有主体,在名称后+default 可以设置默认值,

注解的使用范围:

@Target({

TYPE,     类

FIELD,     字段

METHOD,  方法

PARAMETER,   参数

CONSTRUCTOR, 构造器

LOCAL_VARIABLE  局部变量

})

注解的周期

@Retention(RetentionPolicy.SOURCE)    注解只在源码级别有效

@Retention(RetentionPolicy.CLASS)      注解在字节码即别有效  默认值

@Retention(RetentionPolicy.RUNTIME)   注解在运行时期有效

log4j:tomcat提供的日志组件。

使用方法:

1、导入log4j.jar包

2、LogFactory.getLog(当前类.class);

3、.info\error\debug\warn

级别:debug   info   warn   error

配置:

# 通过根元素指定日志输出的级别、目的地:

#  日志输出优先级: debug < info < warn < error

log4j.rootLogger=info,console,file

############# 日志输出到控制台 #############

# 日志输出到控制台使用的api类

log4j.appender.console=org.apache.log4j.ConsoleAppender

# 指定日志输出的格式: 灵活的格式

log4j.appender.console.layout=org.apache.log4j.PatternLayout

# 具体格式内容

log4j.appender.console.layout.ConversionPattern=%d %p %c.%M()-%m%n

############# 日志输出到文件 #############

log4j.appender.file=org.apache.log4j.RollingFileAppender

# 文件参数: 指定日志文件路径

log4j.appender.file.File=../logs/MyLog.log

# 文件参数: 指定日志文件最大大小

log4j.appender.file.MaxFileSize=5kb

# 文件参数: 指定产生日志文件的最大数目

log4j.appender.file.MaxBackupIndex=100

# 日志格式

log4j.appender.file.layout=org.apache.log4j.PatternLayout

log4j.appender.file.layout.ConversionPattern=%d %c.%M()-%m%n

泛型、注解、log4j的更多相关文章

  1. 泛型-----键值对----映射 hashmap--entry中key value 链表

    connection map 集合框架 * java.util.Collection *集合与数组相似,也是可以保存一组元素,并且提供了操作元素的相关方法. *collection是所有集合的顶级接口 ...

  2. JAVA高级特性反射和注解

    反射: 枚举反射泛型注解.html34.3 KB 反射, 主要是指通过类加载, 动态的访问, 检测和修改类本身状态或行为的一种能力, 并能根据自身行为的状态和结果, 调整或修改应用所描述行为的状态和相 ...

  3. 基础篇:深入解析JAVA注解机制

    目录 java实现注解的底层原理和概念 五种元注解详解 使用动态代理机制处理注解 spring.AOP和注解机制 (题外)@FunctionalInterface原理介绍 欢迎指正文中错误 关注公众号 ...

  4. SpringBoot技术栈搭建个人博客【后台开发】

    前言:在之前,我们已经完成了项目的基本准备,那么就可以开始后台开发了,突然又想到一个问题,就是准备的时候只是设计了前台的RESTful APIs,但是后台管理我们同样也是需要API的,那么就在这一篇里 ...

  5. Lombok 介绍

    Lombok使用 介绍 在项目中使用Lombok可以减少很多重复代码的书写.比如说getter/setter/toString等方法的编写. IDEA中的安装 打开IDEA的Setting –> ...

  6. idea安装Lombok及使用介绍

    原文:https://blog.csdn.net/motui/article/details/79012846 Lombok使用 介绍 在项目中使用Lombok可以减少很多重复代码的书写.比如说get ...

  7. 使用Lombok来优雅的编码

    介绍在项目中使用Lombok可以减少很多重复代码的书写.比如说getter/setter/toString等方法的编写. IDEA中的安装打开IDEA的Setting –> 选择Plugins选 ...

  8. 【造轮子】打造一个简单的万能Excel读写工具

    大家工作或者平时是不是经常遇到要读写一些简单格式的Excel? shit!~很蛋疼,因为之前吹牛,就搞了个这东西,还算是挺实用,和大家分享下. 厌烦了每次搞简单类型的Excel读写?不怕~来,喜欢流式 ...

  9. Atitit.attilax软件研发与项目管理之道

    Atitit.attilax软件研发与项目管理之道 1. 前言4 2. 鸣谢4 3. Genesis 创世记4 4. 软件发展史4 5. 箴言4 6. 使徒行传 4 7. attilax书 4 8. ...

  10. JVM学习(1)——通过实例总结Java虚拟机的运行机制

    俗话说,自己写的代码,6个月后也是别人的代码……复习!复习!复习!涉及到的知识点总结如下: JVM的历史 JVM的运行流程简介 JVM的组成(基于 Java 7) JVM调优参数:-Xmx和-Xms ...

随机推荐

  1. Oracle EBS-SQL (BOM-15):检查多层BOM(含common BOM).sql

    select       distinct b.lvl                                                      层次, b.OPERATION_SEQ ...

  2. apache httpd, nginx, tomcat, jboss

    web上的server都叫web server,但是大家分工也有不同的. nginx常用做静态内容服务和代理服务器(不是你FQ那个代理),直面外来请求转发给后面的应用服务(tomcat,django什 ...

  3. win7系统怎样备份

    利用系统自带的备份还原 1 这种方法的缺点是如果以后系统出现问题,无法进入系统的话,就无法恢复系统了.首先我们点击开始菜单,打开控制面板! 2 在控制面板中点击系统和安全! 3 我们选择备份和还原中的 ...

  4. 弹出框、遮罩层demo

    仿alert.confirm的弹出框. 弹出后,用遮罩层将背景虚化. 代码如下: <html> <meta http-equiv="Content-Type" c ...

  5. cf468A 24 Game

    A. 24 Game time limit per test 1 second memory limit per test 256 megabytes input standard input out ...

  6. Objective-C 基本语法:实例变量与成员变量的区别.l........实例方法和类方法区别

    http://leopard168.blog.163.com/blog/static/16847184420138153296930/ http://blog.csdn.net/thdxs/artic ...

  7. 【学习总结】autostart 与 init

    学习总结/etc/xdg/autostart/xxx.desktop,是开机从登录界面跳转到桌面启动的,可以拿到桌面环境变量,用户id是“普通用户”,如果自启动的程序文件所属者为root,则需要 执行 ...

  8. 优秀的目录文档内容查找,替换工具,可以飞快的帮助你查询大IIS日志哟。

    这,是一款飞速的目录文档中内容查找的工具. 它,飞快精准的帮助你查询到你想搜索的文档中的内容. 它,是一款由非常牛B,我都不晓得姓名的作者开发的,冒失是C++的windows应用. 你,非常需要他. ...

  9. 定义file input

    <div class="inputFileWrapper"> <label for="inputFile"> <input typ ...

  10. Do we need other languages other than C and C++?

    There were hundreds of or thousands of programming languages created since the invention of computer ...