Создать абстрактный класс и производные классы - C#
Формулировка задачи:
Помогите пожалуйста, очень надо...
1. Создать абстрактный класс Издание с методами позволяющим вывести на экран информацию об издании, а также определить является ли данное издание искомым.
2. Создать производные классы: Книга (название, фамилия автора, год издания, издательство), Статья (название, фамилия автора, название журнала, его номер и год издания), Электронный ресурс (название, фамилия автора, ссылка, аннотация) со своими методами вывода информации на экран.
3. Создать каталог (массив) из n изданий, вывести полную информацию из каталога, а также организовать поиск изданий по фамилии автора..
Решение задачи: «Создать абстрактный класс и производные классы»
textual
Листинг программы
- namespace ConsoleEdition
- {
- abstract class Edition
- {
- public string NameOfPublication;
- public string LastNameOfAuthor;
- public Edition(string nameofpublic,string lastname)
- {
- NameOfPublication = nameofpublic;
- LastNameOfAuthor = lastname;
- }
- public abstract void GetInformation();
- }
- class Book :Edition
- {
- public string YearOfPublication;
- public string NameOfEdition;
- public Book(string nameofpublic, string lastname,string yearofpublic, string nameofedition):base(nameofpublic,lastname)
- {
- YearOfPublication = yearofpublic;
- NameOfEdition = nameofedition;
- }
- public override void GetInformation()
- {
- Console.WriteLine("Information : {0},{1},{2},{3}",NameOfPublication,LastNameOfAuthor,YearOfPublication,NameOfEdition);
- }
- }
- class Article : Edition
- {
- public string NameOfMagazine;
- public int Number;
- public string YearOfPublicat;
- public Article(string nameofpublic, string lastname, string yearofpublic, string nameofmagazine, int number):base(nameofpublic,lastname)
- {
- NameOfMagazine = nameofmagazine;
- Number = number;
- YearOfPublicat = yearofpublic;
- }
- public override void GetInformation()
- {
- Console.WriteLine("Information:{0},{1},{2},{3},{4}",NameOfPublication,LastNameOfAuthor,NameOfMagazine,Number,YearOfPublicat) ;
- }
- }
- class InterntEdition : Edition
- {
- public string Link;
- public string Annotation;
- public InterntEdition(string nameofpublic, string lastname, string link,string annotation): base(nameofpublic,lastname)
- {
- Link = link;
- Annotation = annotation;
- }
- public override void GetInformation()
- {
- Console.WriteLine("Information:{0},{1},{2},{3}",NameOfPublication,LastNameOfAuthor,Link,Annotation);
- }
- }
- class Catalog
- {
- public List<Edition> list = new List<Edition>();
- public void AddEdition(Edition edit)
- {
- list.Add(edit);
- }
- public void FindEdition(string lastname)
- {
- foreach (var p in list.FindAll(p => p.LastNameOfAuthor == lastname))
- p.GetInformation();
- }
- }
- class Program
- {
- static void Main(string[] args)
- {
- Catalog c = new Catalog();
- c.AddEdition(new Book("Book","Test","2005","Star"));
- c.AddEdition(new Article("Article","Test","2012","Super",12));
- c.AddEdition(new InterntEdition("Internet", "Test", "http", "Annotation"));
- foreach (var p in c.list)
- {
- p.GetInformation();
- }
- c.FindEdition("Test");
- Console.ReadLine();
- }
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д