在C#中,as
關(guān)鍵字用于將一個(gè)對(duì)象轉(zhuǎn)換為另一個(gè)類型,如果轉(zhuǎn)換失敗,則返回null
而不會(huì)拋出異常??梢耘cas
關(guān)鍵字結(jié)合使用來(lái)進(jìn)行安全的類型轉(zhuǎn)換操作,避免出現(xiàn)異常。
下面是一個(gè)例子:
// 定義一個(gè)父類
class Animal
{
public void Eat()
{
Console.WriteLine("Animal is eating");
}
}
// 定義一個(gè)子類
class Dog : Animal
{
public void Bark()
{
Console.WriteLine("Dog is barking");
}
}
Animal animal = new Dog();
Dog dog = animal as Dog;
if (dog != null)
{
dog.Bark();
}
else
{
Console.WriteLine("Conversion failed");
}
在上面的例子中,首先將一個(gè)Dog
對(duì)象賦值給一個(gè)Animal
類型的變量animal
,然后使用as
關(guān)鍵字將animal
轉(zhuǎn)換為Dog
類型的變量dog
。如果轉(zhuǎn)換成功,就可以調(diào)用dog
的Bark()
方法;如果轉(zhuǎn)換失敗,則輸出"Conversion failed"。
通過(guò)與as
關(guān)鍵字結(jié)合使用,可以更加安全地進(jìn)行類型轉(zhuǎn)換操作,避免出現(xiàn)異常。