Полиморфизмы с палочками и понижающимися?C#

Место общения программистов C#
Ответить
Anonymous
 Полиморфизмы с палочками и понижающимися?

Сообщение Anonymous »

В примере ниже, я отметил объект с разными типами, выполняя как аппекун, так и спуска. По сути, я использовал эти методы кастинга, чтобы выразить объект несколькими способами в зависимости от его типа во время выполнения. Мой вопрос заключается в том, можно ли считать этот сценарий примером полиморфизма в объектно-ориентированном программировании. гибкость и метод включения переоценки. Тем не менее, я не уверен, подпадает ли также использование апкатизирования и смягчения перегруженные методы, которые демонстрируют изменения поведения метода во время выполнения?namespace Inheritance
{
internal class Program
{
static void Main(string[] args)
{
Vehicle supersport = new SupersportCar("BMW", "m5", 1730, 3_000_000, 507, 520, 4.7);
SupersportCar ssc = (SupersportCar)new Vehicle("BMW", "m5", 1730, 3_000_000);
}
}

class Vehicle
{
public string Brand { get; set; }
public string Model { get; set; }
public int Weight { get; set; }
public double Price { get; set; }

public Vehicle(string Brand, string Model, int Weight, double Price)
{
this.Brand = Brand;
this.Model = Model;
this.Weight = Weight;
this.Price = Price;

Console.WriteLine("YENİ ARAÇ");
Console.WriteLine("Vehicle Constructer");
Console.WriteLine($"""
Araç Markası: {Brand}
Araç modeli: {Model}
Araç ağırlığı: {Weight}
Araç fiyatı: {Price}
""");
Console.WriteLine("*********\n");
}

public static void StaticArac()
{

}
}

class Car : Vehicle
{
public double Power { get; set; }
public double Torque { get; set; }

public Car(string Brand, string Model, int Weight, double Price, double Power, double Torque) : base(Brand,Model,Weight,Price)
{
this.Power = Power;
this.Torque = Torque;

Console.WriteLine("YENİ ARAÇ");
Console.WriteLine("Car Constructer");
Console.WriteLine($"""
Araç Markası: {Brand}
Araç modeli: {Model}
Araç ağırlığı: {Weight}
Araç fiyatı: {Price}
Araç gücü: {Power} hp
Araç torku: {Torque} NM
""");
Console.WriteLine("*********\n");
}
}

class SupersportCar : Car
{
public double FromZeroToHundered { get; set; }

public SupersportCar(string Brand, string Model, int Weight, double Price, double Power, double Torque, double FromZeroToHundered) : base(Brand, Model, Weight, Price, Power, Torque)
{
this.FromZeroToHundered = FromZeroToHundered;

Console.WriteLine("YENİ ARAÇ");
Console.WriteLine("SupersportCar Constructer");
Console.WriteLine($"""
Araç Markası: {Brand}
Araç modeli: {Model}
Araç ağırlığı: {Weight}
Araç fiyatı: {Price}
Araç gücü: {Power} hp
Araç torku: {Torque} NM
0-100 hızlanması: {FromZeroToHundered} sn
""");
Console.WriteLine("*********");
}
}

}


Подробнее здесь: https://stackoverflow.com/questions/793 ... ymorphisms
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»