java注解的类型有哪些?

美女程序员鼓励师

提到java里的注解,和我们平时的注释还是有很大的区别,主要是作为java特性来使用的,跟我们常见的类是同一个使用的层面。关于java注解的类型,我们可以简单分为:自定义注解和元注解。其中元注解里的JDK又有5中注解的类型,下面一起来看看具体的内容讲解吧。

1、自定义注解

定义注解使用关键字: @interface

// #1 定义注解

public @interface MyAnno1{

}

2、元注解

用于修饰注解的注解。

JDK提供的5种元注解:

(1)@Target:用于确定被修饰的自定义注解使用位置

(2)@Retention:用于确定被修饰的自定义注解生命周期

(3)@Inherited:表示该注解具有继承性(了解)

(4)@Documented:使用 javadoc 生成 api 文档时,是否包含此注解 (了解)

(5)@Repeatable:注解在同一个位置,只能出现一次。使用@Repeatable,可以在同一个地方使用多次了。

package util;

 

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.SQLException;

 

import anno.JDBCConfig;

 

@JDBCConfig(ip = "127.0.0.1", database = "test", encoding = "UTF-8", loginName = "root", password = "admin")

@JDBCConfig(ip = "127.0.0.1", database = "test", encoding = "UTF-8", loginName = "root", password = "admin")

public class DBUtil {

    static {

        try {

            Class.forName("com.mysql.jdbc.Driver");

        } catch (ClassNotFoundException e) {

            e.printStackTrace();

        }

    }

 

    public static Connection getConnection() throws SQLException, NoSuchMethodException, SecurityException {

        JDBCConfig config = DBUtil.class.getAnnotation(JDBCConfig.class);

        System.out.println(config);

 

        String ip = config.ip();

        int port = config.port();

        String database = config.database();

        String encoding = config.encoding();

        String loginName = config.loginName();

        String password = config.password();

 

        String url = String.format("jdbc:mysql://%s:%d/%s?characterEncoding=%s", ip, port, database, encoding);

        return DriverManager.getConnection(url, loginName, password);

    }

 

    public static void main(String[] args) throws NoSuchMethodException, SecurityException, SQLException {

        Connection c = getConnection();

        System.out.println(c);

    }

}

以上就是java注解类型的介绍,大家看对整个知识点进行梳理和理解后,可以针对每个不同的注解,在课后找寻对应的方法逐个进行练习。更多Java学习指路:Java基础

以上是 java注解的类型有哪些? 的全部内容, 来源链接: utcz.com/z/543597.html

回到顶部