Классы Книга и Статья с применением абстрактных классов - C#

Узнай цену своей работы

Формулировка задачи:

Выполнить любые 3 (из 6) задания на C# (тема была разделена на части) 2. Создайте консольное приложение. В нем разработайте абстрактный класс Книга с методом позволяющим вывести на экран информацию об издании. Создать производные классы: Книга (название, фамилия автора, год издания, издательство), Статья (название, фамилия автора, название журнала, его номер и год издания) со своими методами вывода информации на экран. Создать каталог (массив) из n изданий, вывести полную информацию из каталога.

Решение задачи: «Классы Книга и Статья с применением абстрактных классов»

textual
Листинг программы
  1. using System;
  2. namespace ConsoleApplication1
  3. {
  4.     abstract class AbstractBook
  5.     {
  6.         //---общие атрибуты---
  7.         public string Name { get; private set; }
  8.         public string Author { get; private set; }
  9.         public int Year { get; private set; }
  10.         //---общие атрибуты---
  11.  
  12.         public AbstractBook(string n, string a, int y)
  13.         {
  14.             Name = n; Author = a; Year = y;
  15.         }
  16.  
  17.         public virtual string About()
  18.         {
  19.             return string.Format("Автор: {0}. Название: {1}. Год издания: {2}. ",Name,Author,Year);
  20.         }
  21.     }
  22.  
  23.     class Book : AbstractBook
  24.     {
  25.         public string PublishingHouse { get; private set; }
  26.  
  27.         public Book(string n, string a, int y, string ph) : base(n,a,y)
  28.         {
  29.             PublishingHouse = ph;
  30.         }
  31.  
  32.         public override string About()
  33.         {
  34.             return base.About() + string.Format("Издательство: {0}.",PublishingHouse);
  35.         }
  36.     }
  37.  
  38.     class Article : AbstractBook
  39.     {
  40.         public string MagName { get; private set; }
  41.         public int MagNum { get; private set; }
  42.         public Article(string n, string a, int y, string mgname, int mgnum) : base(n,a,y)
  43.         {
  44.             MagName = mgname;
  45.             MagNum = mgnum;
  46.         }
  47.  
  48.         public override string About()
  49.         {
  50.             return base.About() + string.Format("Журнал: {0}. Номер: {1}.", MagName, MagNum);
  51.         }
  52.     }
  53.  
  54.  
  55.     class Program
  56.     {
  57.         static void Main(string[] args)
  58.         {
  59.             AbstractBook[] abooks = new AbstractBook[]
  60.             {
  61.                 new Book("Брак и мораль", "Б.Рассел",2002,"АСТ"),
  62.                 new Article("Влияние мочи на озоновый слой", "Группа британских ученых",2002,"Наука и жизнь",412),
  63.                 new Book("Психология сознания","А.Ревонсуо",2002,"СПБ")
  64.             };
  65.             foreach(var x in abooks)
  66.             {
  67.                 Console.WriteLine(x.About());
  68.             }
  69.             Console.ReadLine(); //чтобы не закрывалось
  70.         }
  71.     }
  72. }

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


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

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

10   голосов , оценка 4.5 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы