文章目錄
- 一、Java基礎
- 1.注解
- 1.1概念
- 1.2內置注解
- 1.3元注解
- 1.4自定義注解
- 1.4.1定義CustomDescription注解
- 1.4.2實作繼承關系
- 1.5注解使用場景經介紹
- 2.反射
- 2.1反射機制
- 2.2理解Class類
- 二、Spring基礎
- 1.Spring框架介紹
- 2.依賴注入DI與控制反轉IOC
- 3.面向切面編程
一、Java基礎
1.注解
1.1概念
他提供了一種安全的類似注釋的機制,用來將任何的資訊或元資料與程式進行關聯,直觀明了的說,注解就是資訊與程式的業務邏輯無關,并且供指定的工具或框架使用,
Java注解是附加在代碼中的一些元資訊,便于一些工具在編譯、運行時進行決議和使用,起到說明、配置的功能, 它不會也不能影響代碼的實際邏輯,僅僅起到輔助性的作用,包含在java.lang.annotation包中,
1.2內置注解
常用注解列舉
@Override:提示子類要復寫父類中被它修飾的方法;
@Suppress Warnnings:組織警告;
@FunctionalInterface:函式式介面注解(Java1.8版本引入),是一個具有一個方法的普通介面
1.3元注解
基礎知識再現:
@Retention:定義生命周期
(RetentionPolicy.SOURCE:在編譯階段丟棄,)
(RetentionPolicy.CLASS:在類加載時丟棄,)
(RetentionPolicy.RUNTIME:始終不丟棄,最常用,)
@Target:(類、方法、區域變數或成員變數、引數等)用于什么地方
@Documented:注解是否包含在JavaDoc中;
@Inherited:是否允許子類繼承該注解;
(父類P有注解A,如果A用@Inherited修飾,那么子類C也繼承父類的注解A)
@Repeatable:指定注解可重復使用,
1.4自定義注解
1.4.1定義CustomDescription注解
注意:
- 自定義注解中,注解的成員變數義無引數的方法形式宣告
- CustomDescriptions.class為注解容器
- 若注解(非容器)中有一個Value屬性,則在使用注解時直接把值寫入括號內,而作為容器則需要將屬性定義為陣列
1.4.2實作繼承關系
建立兩個類分別添加1、2個注解
Person:
package CusAnnontation;
@CustomDescription(description="基類")
@CustomDescription(description="人")
public class Person{
......
}
Student:
package CusAnnontation;
@CustomDescription("學生")
由上方舉例可看出如果只有一個value屬性可直接寫在引號內,多個則需要區分
1.5注解使用場景經介紹
- 使用注解做bean的屬性值校驗
- 使用注解做權限控制
- 代替組態檔功能,像Spring基于注解的配置,減少了xml的配置
- 可以生成檔案,像Java代碼注釋中的@see、@param等
2.反射
2.1反射機制
在運行狀態中,對于任意一個類,都能夠知道這個類的所有屬性和方法;對于任意一個物件,都能呼叫它的任意一個方法和屬性,這種動態獲取的資訊以及動態呼叫物件的方法的功能稱為java語言的反射機制,
2.2理解Class類
首先明確Class也是一個類,只是它是一個描述類的類,也可以生成物件,
一般獲取Class物件的主要方式如下:
- 通過類名獲取(eg:類名.class())
- 通過物件獲取(eg:物件.getClass())
- 通過全類名獲取(Class.forName(全類名))
Class類常用方法:

二、Spring基礎
1.Spring框架介紹
2.依賴注入DI與控制反轉IOC
3.面向切面編程
(等老師發課件再寫圖太多了= =)
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/277646.html
標籤:java
上一篇:Java并發編程(十五):CountDownLatch原始碼逐行深度分析
下一篇:SSM專案中使用攔截器和過濾器
