java引用型別強制轉換,型別是什麼意思,轉換的是什麼,有

時間 2021-08-11 16:27:33

1樓:錯益夔傲安

表示強制轉換型別.學點強制轉換的知識吧

比如:1.基本型別:

inta=0;

float

a=8.2//error,這個不能被編譯通過

//我們這樣寫就可以了

float

a=(float)8.2;//把double

型的強制轉換為float

//也可以這樣寫的float

a=8.2f

2.引用型別:

乙個超類能做的東西,其子類也能做,而乙個子類能做的東西超類不一定能做,所以就有這樣的規則:

(1).乙個子類的物件可以強制轉換成為其超類的物件;

(2).乙個超類的物件如果強制轉換成子類的物件將在執行的時候有異常丟擲;

(3).如果不是同一繼承樹上的類強制轉換,將產生編譯錯誤.

例如:classa{}

class

bextends

a{}classc{}

bb=new

b();

aa=(a)b;//被b引用的物件強制轉換為類a的物件,類b的物件具有類a物件的性質,所以可以轉換成功

a=new

a();

b=(b)a;//原本是類a的物件,可能不具備類b的性質,這樣會在執行的時候產生異常.

cc=new

c();

a=(a)c;//如果c不是同一繼承樹類編譯的時候將會產生錯誤

2樓:素菁閭雨安

引用型別,指的是物件的引用代表的這個物件的型別。

例如:a

a;這個物件引用型別為a。

如果a是父類,b繼承於a,有乙個物件b

b,(a)b就叫強制轉換,把b的引用型別轉換成a,就可以把b當a例項化的物件使用

matlab資料型別強制轉換,matlab怎麼把邏輯資料型別轉化為數值

一般來說用dec2hex及hex2dec就可以。ss 010600001388849c ssdec hex2dec ss sshex dec2hex ssdec format hex disp sshex 不過前提是你的機器能處理這麼大的數。我用小一點的數比如說ss 01600001388849c ...

c語言中強制型別轉換究竟改變了什麼

不同型別的變數在記憶體中有不同的儲存方式和不同長度,強制轉型前後有什麼不同都要轉換過來。例如int y 3 char x char y 他們只是長短不同,就把y的高3位元組全截掉,只把最低乙個位元組賦給了x 反過來,若char y 3 int x int y 那麼,將把高3位元組全用0補齊。若是浮點...

sql語句型別轉換問題,SQL語句型別轉換問題

你的b列裡面是不是類似 123 之類的資料,也就是說全部以數字形式出現的字元型別,才可以轉化int。有可能是這個原因。 select a,convert int,b b into mfrom s 向臨時表寫的時候就應該把b列變成int型 select sum b from m 你查詢的時候轉換下就可...