Создать абстрактный класс Vehicle (транспортное средство) - C# (186924)
Формулировка задачи:
Может у кого-нибудь завалялась пара задач на C# на наследование.
1- Создать абстрактный класс Vehicle (транспортное средство). На его основе реализовать
классы Plane (самолет), Саг (автомобиль) и Ship (корабль). Классы
должны иметь возможность задавать и получать координаты и параметры
средств передвижения (цена, скорость, год выпуска и т. п.) с помощью свойств.
Для самолета должна быть определена высота, для самолета и корабля — количество
пассажиров, для корабля — порт приписки. Динамические характеристики
задать с помощью методов.
2 - Создать класс Point (точка). На его основе создать классы ColoredPoint и Line
(линия). На основе класса Line создать классы ColoredLine и PolyLine (многоугольник).
В классах описать следующие элементы:
• конструкторы с параметрами и конструкторы по умолчанию;
• свойства для установки и получения значений всех координат, а также для
изменения цвета и получения текущего цвета;
• для линий — методы изменения угла поворота линий относительно первой
точки;
• для многоугольника — метод масштабирования.
Решение задачи: «Создать абстрактный класс Vehicle (транспортное средство)»
textual
Листинг программы
- using System;
- namespace Vehicle
- {
- class Program
- {
- static void Main()
- {
- var car = new Car {Price = 50000};
- //Или так:
- //Car car = new Car();
- //car.Price = 50000
- car.Coordinate(40000,30000);
- Console.WriteLine("Стоимость машины {0}:", car.Price.ToString());
- //Console.WriteLine("Координаты машины X:{0},Y: {1}", car.CoordinateX.ToString(),car.CoordinateY.ToString());
- Console.WriteLine("Координаты машины X:{0},Y: {1}",car.CoordinateX.ToString(),car.CoordinateY.ToString());
- Console.Read();
- }
- }
- internal class Vehicle
- {
- private double coordinateX, coordinateY;
- private double price,speed,year_of_construction;
- /* можно также применять автосвойства(тогда не нужны написанные выше поля ):
- public double CoordinateX { get; set; }
- */
- public double CoordinateX
- {
- get { return coordinateX; }
- set { coordinateX = value; }
- }
- public double CoordinateY
- {
- get { return coordinateY; }
- set { coordinateY = value; }
- }
- public double Price
- { get { return price; }
- set { price = value;}
- }
- public double Speed
- {
- get { return speed; }
- set { speed = value; }
- }
- public double Year_of_construction
- {
- get { return year_of_construction; }
- set { year_of_construction = value; }
- }
- //Метод для динамически меняющихся свойств
- public void Coordinate(double CoordinateX, double CoordinateY)
- {
- this.CoordinateX = CoordinateX;
- this.coordinateY = CoordinateY;
- }
- //Метод для динамически меняющихся свойств
- public void SpeedMethod(double Speed)
- {
- this.Speed = Speed;
- }
- }
- class Plane : Vehicle
- {
- public double Height { get; set; }
- public double NumberOfPassengers { get; set; }
- }
- class Ship : Vehicle
- {
- public double NumberOfPassengers { get; set; }
- public string DestinationPort { get; set; }
- }
- class Car :Vehicle
- {
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д