亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

為什么我原來的構造方法沒有了

dog轉換成cat之后,cat沒有繼承dog的名字(構造方法),名字變成了空

正在回答

4 回答

public static“?explicit” operator Cat(Dog dog)

0 回復 有任何疑惑可以回復我~

改成隱士轉換

0 回復 有任何疑惑可以回復我~
#1

烏薪王 提問者

沒有用啊,上面改成implicit,下面去掉(Cat)
2018-11-04 回復 有任何疑惑可以回復我~

輸出:我叫hommy

????????? wow

????????? 我叫

????????? meow



0 回復 有任何疑惑可以回復我~
#1

烏薪王 提問者

我自己來解釋一下把,形參不是字段
2018-11-06 回復 有任何疑惑可以回復我~

using System;

namespace 裝箱與拆箱
{?? abstract public class pet
??? {
??????? public string name;
? ? ? ??
??????? public pet(string name)
??????? {
??????????? Console.WriteLine("我叫" + name);
??????? }
??????? abstract public void speak();
???????
??? }
??? public class Dog : pet
??? {
??????? public Dog(string name):base(name)
??????? {
??????????
??????? }
???????
??????? public override void speak()
??????? {
??????????? Console.WriteLine("wow");
??????? }
??????? public static explicit operator Cat(Dog dog)
??????? {
??????????? return new Cat(dog.name);
??????? }
??? }
??? public class Cat : pet
??? {
??????? public Cat(string name) : base(name)
??????? {

??????? }
??????? public override void speak()
??????? {
??????????? Console.WriteLine("meow");
??????? }
???????
??? }
???
??? class Program
??? {
??????? static void Main(string[] args)
??????? {
? ? ? ? ? ? Dog dog = new Dog("hommy");
??????????? dog.speak();
??????????? Cat cat = (Cat)dog;
??????????? cat.speak();
? ? ? ? ? ??
??????? }
??? }
}


0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

為什么我原來的構造方法沒有了

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號