C 委託 泛型 事件 裝箱拆箱

2021-10-07 23:48:14 字數 1545 閱讀 6673

一、委託

我感覺的委託就是指乙個函式指標,指向被委託的方法,在定義的時候把返回值型別與引數全部定義好,建立的例項相當於乙個指向被委託函式的指標,然後將需要的資料通過委託傳進去

是先呼叫委託例項,然後委託例項再呼叫方法

簡寫的那種方式更能體現它像乙個函式指標

注意:多播委託就是用+=與-=進行操作 當多播委託的返回值型別不是void時 會從最後乙個被呼叫的方法那接收返回值。

下面是例子:

class

program

static

intadd

(int a,

int b)

}

二、泛型

在要處理的資料型別不同但是演算法相同的時候用到泛型。

可以泛型類也可以泛型方法

對於泛型類:

class fanxing

}

使用的時候是這個樣子的:

fanxing<

int> fanxing =

newfanxing

<

int>()

;fanxing.a =

1;

對於泛型方法:

void

fanxing

<

t>

(t a,

t b)

使用時候的樣子:

fanxing

<

int>(1

,2);

對於泛型介面:

inte***ce

imyinte***ce

使用的時候:

class

myclass

:imyinte***ce

}

三、有一種委託叫泛型委託

1.func

2.action

四、裝箱和拆箱

資料型別分為值型別與引用型別 值型別在棧中分配記憶體而引用型別在堆中分配記憶體

裝箱是將值型別轉換成引用型別

拆箱是將引用型別轉換成值型別

在呼叫含有object型別的方法時 傳入值型別的資料會進行裝箱,在這個方法之中處理這個資料會發生拆箱

裝箱:

int a =1;

object obj = a;

拆箱:

int b =

(int

)obj;

四、事件

事件實現的功能是通知和可選的事件引數

比如手機響了,這個就是通知,而事件引數就是某個應用的推送訊息。

事件有事件的擁有者:比如手機

事件成員:比如響聲

事件的響應者:比如人

事件處理器:比如人對手機的各種操作

事件訂閱:把人和手機關聯在一起

事件訂閱的操作符是+= 這裡一定要匹配 所以可以先在訂閱的時候寫好方法名,然後再自動生成。

C 裝箱 拆箱 泛型

1 裝箱 值型別轉引用型別。開闢一塊記憶體空間進行存放資料。2 拆箱 引用型別轉值型別。值型別存放在棧上,引用型別存放在堆上。裝箱需要消耗記憶體,所以引出了泛型。泛型 1.使用非泛型集合時引發的裝箱和拆箱操作 看下面的一段 1 2 3 4 5 6 7 8 vararray newarraylist ...

從裝箱拆箱看泛型

net很容易把值型別轉換為引用型別,所以可以在需要物件的任意地方使用值型別。例如int可以賦予乙個物件,從值型別轉換為引用型別稱為裝箱。如果方法需要把乙個物件作為引數,同時傳遞乙個值型別,裝箱操作就會自動進行。另一方面,裝箱的值型別可以使用拆箱操作轉換為值型別。定義乙個一般的 非泛型的簡化鍊錶類,它...

java學習 裝箱與拆箱 泛型

把基本資料型別賦給對應的包裝類。比如 把int賦值給integer,對他的操作就需要用它的方法了。是值型別轉換為引用型別的過程。把乙個包裝類賦給基本資料型別。由引用型別轉換為值型別的過程。integer i 1 裝箱 int j i 拆箱 典型應用 list list new arraylist l...