WINFORM 底層原理的講解(發布訂閱)

2021-10-01 02:28:43 字數 1356 閱讀 8932

public

static

void

publisher()

;// 執行訂閱

subscriber();

//**變動會觸發訂閱者裡的函式

phone.price =

500;

}

/// 

/// 事件的發布者,發布事件並且在滿足條件的情況下,觸發事件

///

public

class

phone

public

string name

private

int _price;

public

int price

set);}

this

._price =

value;}

}public

event

eventhandler discounthandler;

}

public

static

void

subscriber()

/// 

/// 訂戶 關注事件,事件發生之後,自己做出相應的動作

/// **變動會觸發buy函式

///

public

class

teacher")

;xeventargs xeventargs =

(xeventargs)e;

console.

writeline

($"之前的**");

console.

writeline

($"現在的**");

console.

writeline

("買下來");

}}public

class

student")

;xeventargs xeventargs =

(xeventargs)e;

console.

writeline

($"之前的**");

console.

writeline

($"現在的**");

console.

writeline

("買下來");

}}

public

class

xeventargs

:eventargs

public

int newprice

}

Voliate的底層原理

jvm 底層是通過乙個叫做 記憶體屏障 的東西來完成。記憶體屏障,也叫做記憶體柵欄,是一組處理器指令,用於實現對記憶體操作的順序限制。所以能禁止指令重排序,即volatile能在一定程度上保證有序性。一定程度理解如下 語句1和語句2的順序不保證 語句4和語句5的順序不保證 但是無論怎麼重排,語句3前...

HashMap的底層原理

簡單來說,hashmap的實現是 陣列 鍊錶 陣列是hashmap的主體,鍊錶則是主要為了解決雜湊衝突而設立的。對於查詢來說,陣列更加的方便 對於刪除,修改,鍊錶更加的方便。hash表的本質就是乙個陣列,陣列中的每乙個元素被稱為乙個箱子 bin 箱子中存放的是鍵值對。儲存過程如下 根據k值計算他的雜...

HashMap的底層原理

在jdk1.6和jdk1.7中hashmap是桶加鍊表的實現方式.hashmap的底層結構就是乙個陣列,陣列中每乙個元素又是乙個鍊錶.當新增乙個元素 key value 的時候,根據key的hash值 或者說呼叫key的hashcode方法 來確定插入到哪乙個桶中 確定插入陣列中的位置 當桶中有多個...