Задача:
Создайте класс "Книга" с атрибутами "название", "автор" и "год издания", а также методом, который выводит краткую аннотацию книги. Visual Basic.
План:
- Алгоритм решения
- Код программы
- Примеры входных данных и ожидаемых результатов
- Объяснение кода программы
- Блок-схема
Алгоритм решения:
-
Создание класса
Book
:- Объявление приватных полей
_title
,_author
и_year
для хранения информации о книге.
- Объявление приватных полей
-
Реализация конструктора:
- Принимает параметры
title
,author
иyear
. - Инициализирует приватные поля соответствующими значениями.
- Принимает параметры
-
Определение свойств:
Title
: для доступа к названию книги.Author
: для доступа к автору книги.Year
: для доступа к году издания книги.- Каждое свойство имеет геттер и сеттер для чтения и изменения значений.
-
Реализация метода
PrintAnnotation()
:- Выводит на консоль краткую аннотацию книги.
- Отображает название, автора и год издания в отформатированном виде.
-
Использование класса:
- Создание экземпляра класса
Book
с передачей необходимых параметров. - Вызов метода
PrintAnnotation()
для вывода информации о книге. - При необходимости, использование свойств для получения или изменения данных книги.
- Создание экземпляра класса
Код программы на языке Visual Basic:
Код Visual Basic
Public Class Book
Private _title As String
Private _author As String
Private _year As Integer
Public Sub New(title As String, author As String, year As Integer)
_title = title
_author = author
_year = year
End Sub
Public Property Title As String
Get
Return _title
End Get
Set(value As String)
_title = value
End Set
End Property
Public Property Author As String
Get
Return _author
End Get
Set(value As String)
_author = value
End Set
End Property
Public Property Year As Integer
Get
Return _year
End Get
Set(value As Integer)
_year = value
End Set
End Property
Public Sub PrintAnnotation()
Console.WriteLine($"Title: {_title}")
Console.WriteLine($"Author: {_author}")
Console.WriteLine($"Year: {_year}")
End Sub
End Class
Примеры входных данных и ожидаемых результатов:
' Пример 1
Dim book1 As New Book("To Kill a Mockingbird", "Harper Lee", 1960)
book1.PrintAnnotation()
' Ожидаемый результат:
' Title: To Kill a Mockingbird
' Author: Harper Lee
' Year: 1960
' Пример 2
Dim book2 As New Book("1984", "George Orwell", 1949)
book2.PrintAnnotation()
' Ожидаемый результат:
' Title: 1984
' Author: George Orwell
' Year: 1949
' Пример 3
Dim book3 As New Book("The Great Gatsby", "F. Scott Fitzgerald", 1925)
book3.PrintAnnotation()
' Ожидаемый результат:
' Title: The Great Gatsby
' Author: F. Scott Fitzgerald
' Year: 1925
' Пример 4
Dim book4 As New Book("Pride and Prejudice", "Jane Austen", 1813)
book4.Title = "Sense and Sensibility"
book4.Year = 1811
book4.PrintAnnotation()
' Ожидаемый результат:
' Title: Sense and Sensibility
' Author: Jane Austen
' Year: 1811
Объяснение кода программы:
-
Объявление класса:
Создается публичный класс с названием "Book".Public Class Book
-
Объявление приватных полей:
Определяются три приватных поля для хранения названия, автора и года издания книги.Private _title As String Private _author As String Private _year As Integer
-
Конструктор класса:
Создается конструктор, который принимает параметры и инициализирует приватные поля класса.Public Sub New(title As String, author As String, year As Integer) _title = title _author = author _year = year End Sub
-
Свойство Title:
Определяется публичное свойство Title с методами Get и Set для доступа к приватному полю _title.Public Property Title As String Get Return _title End Get Set(value As String) _title = value End Set End Property
-
Свойство Author:
Определяется публичное свойство Author с методами Get и Set для доступа к приватному полю _author.Public Property Author As String Get Return _author End Get Set(value As String) _author = value End Set End Property
-
Свойство Year:
Определяется публичное свойство Year с методами Get и Set для доступа к приватному полю _year.Public Property Year As Integer Get Return _year End Get Set(value As Integer) _year = value End Set End Property
-
Метод PrintAnnotation:
Создается публичный метод PrintAnnotation, который выводит на консоль информацию о книге, включая название, автора и год издания.Public Sub PrintAnnotation() Console.WriteLine($"Title: {_title}") Console.WriteLine($"Author: {_author}") Console.WriteLine($"Year: {_year}") End Sub