从当前方法C#调用方法2类
发布时间:2020-12-16 01:27:58 所属栏目:百科 来源:网络整理
导读:所以我有一个主类,它有一个对象列表. ListMedia media = new ListMedia(); 媒体类是一个抽象类.有一个名为Book的类继承自媒体.以下是将图书添加到媒体列表的示例. media.Add(new Book(mediaInfo[1],Convert.ToInt32(mediaInfo[2]),mediaInfo[3],summary)); m
所以我有一个主类,它有一个对象列表.
List<Media> media = new List<Media>(); 媒体类是一个抽象类.有一个名为Book的类继承自媒体.以下是将图书添加到媒体列表的示例. media.Add(new Book(mediaInfo[1],Convert.ToInt32(mediaInfo[2]),mediaInfo[3],summary)); mediaInfo是一个传递给构造函数的值数组. string[] mediaInfo = record.Split('|'); 摘要传递到媒体时会加密. book类包含一个解密它的Decrypt()方法,并且工作正常.问题是,当我尝试调用它时,我得到一个错误,说Decrypt不在Media中.那我怎么称呼它. foreach (Media m in media) { if (m.Search(query)) { if (m.GetType() == typeof(Book)) { Console.WriteLine(m.ToString() + m.Decrypt()); } } } 我检查它是否是一本书,所以为什么它不能下去书,看看Decrypt是否存在.我无法将解密放入Media类,因为还有一个歌曲类没有被加密. 解决方法
由于m是Media类型(不包含Decrypt()),因此您需要将m转换为Book:
Console.WriteLine(m.ToString() + ((Book)m).Decrypt()); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |