Создать абстрактный класс и производные классы - 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();
        }
    }
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 4.1 из 5
Похожие ответы