国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服務器之家 - 編程語言 - JAVA教程 - java基于AspectJ(面向切面編程)編碼示例分享

java基于AspectJ(面向切面編程)編碼示例分享

2019-11-06 11:38java技術網 JAVA教程

AspectJ是一種面向切面程序設計的基于Java的實現,下面對過示例學習他的使用方法,需要的朋友可以參考下

一、基本概念

AspectJ是一種面向切面程序設計的基于Java 的實現。它向 Java 中加入了連接點(Join Point)這個新概念,其實它也只是現存的一個 Java概念的名稱而已。它向 Java 語言中加入少許新結構:切點(pointcut)、通知(Advice)、類型間聲明(Inter-type declaration)和方面(Aspect)。切點和通知動態地影響程序流程,類型間聲明則是靜態的影響程序的類等級結構,而切面則是對所有這些新結構的封裝。

基于切面、連接點、切點、通知的概念如下:

Aspect: Aspect 聲明類似于 Java 中的類聲明,在 Aspect 中會包含著一些 Pointcut 以及相應的 Advice。
Joint point:表示在程序中明確定義的點,典型的包括方法調用,對類成員的訪問以及異常處理程序塊的執行等等,它自身還可以嵌套其它 joint point。
Pointcut:表示一組 joint point,這些 joint point 或是通過邏輯關系組合起來,或是通過通配、正則表達式等方式集中起來,它定義了相應的 Advice 將要發生的地方。
Advice:Advice 定義了在 pointcut 里面定義的程序點具體要做的操作,它通過 before、after 和 around 來區別是在每個 joint point 之前、之后還是代替執行的代碼。
連接點是程序流中適當的一點。切點收集特定的連接點集合和在這些點中的值。一個通知是當一個連接點到達時執行的代碼,這些都是 AspectJ的動態部分。其實連接點就好比是程序中的一條一條的語句,而切點就是特定一條語句處設置的一個斷點,它收集了斷點處程序棧的信息,而通知就是在這個斷點前后想要加入的程序代。AspectJ 中也有許多不同種類的類型間聲明, 這就允許程序員修改程序的靜態結構、 名稱、 類的成員以及類之間的關系。AspectJ 中的方面是橫切關注點的模塊單元。它們的行為與 Java語言中的類很象,但是方面還封裝了切點、通知以及類型間聲明

二、如何基于AJDT: AspectJ Development Tools進行AOP程序的開發?

按照ajdt網站上的說明,在eclipse中安裝ajdt插件http://www.eclipse.org/ajdt/
創建AspectJ Project項目
進行代碼開發(本文提供一個簡單的示例)

三、簡單示例:

 

復制代碼代碼如下:


package aop.test;

 

public interface FigureElement {
 public void setXY(int x,int y);
 public void draw();
}

 

 

復制代碼代碼如下:


package aop.test;

 

public class Point implements FigureElement {

 public int x;
 private int y;

 public int getX() {
  return x;
 }

 public String setX(int x) {
  System.out.println("設置x值:x="+x);
  this.x = x;
  return "返回值是x="+x;
 }

 public int getY() {
  return y;
 }

 public void setY(int y) {
  this.y = y;
 }

 public Point(){

 }

 public Point(int x,int y){
  this.x=x;
  this.y=y;
 }

 @Override
 public void setXY(int x,int y) {
  this.x=x;
  this.y=y;
  System.out.println("Point setXY: x="+x+",y="+y);
 }

 @Override
 public void draw() {
  System.out.println("Point draw"); 
 }

 @Override
 public String toString(){
  return "Point: x="+x+",y="+y;
 }
}

 

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 国产成人综合一区二区三区 | 91成人在线看 | 日韩三级电影 | 91av在线免费播放 | 国内精品嫩模av私拍在线观看 | 成年人综合网 | 极品粉嫩饱满一线天在线 | 亚洲精品一区二区三区蜜桃下载 | 亚洲激情中文字幕 | 欧美在线视频a | 欧美精品一区二区三区在线 | 亚洲视频二区 | 国产黄色大片免费在线观看 | 亚洲欧美一区二区三区在线 | 青青青国产精品一区二区 | 国产精品毛片久久久久久 | 91久草视频 | 九九热在线视频观看这里只有精品 | 国产高清在线精品一区二区三区 | 婷婷五月色综合 | 国产精品日韩欧美一区二区三区 | 欧美与黑人午夜性猛交久久久 | 成版人性视频 | 亚洲激情一区 | 自拍偷拍在线视频 | 日韩不卡二区 | 天天操天天干视频 | av在线免费观看网站 | 一级黄免费看 | 91精品一区二区三区久久久久久 | 91亚色| av成人在线观看 | 国产视频一区二区 | 国产精品久久久久久久美男 | 日韩精品一区二区三区在线播放 | 日韩免费av | 亚洲色图在线播放 | 色接久久| 国产欧美精品一区二区三区 | 精品久久久久久久久久久久久久 | 亚洲成人av一区二区三区 |