Okej det här skall lämnas in idag senast egentligen men haft väldigt svårt med detta uppdrag, borde bett om hjälp här tidigare. Det handlar alltså om arv och polymorfism men får den ej att köras..
Kod:
using System; using System.Collections; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Joppesdjur { class Petowner { private int age { get; set; } private List<string> Animal_List = new List<string>(); public Petowner(int age) { Age = age; Animal_List.Add Cat; Animal_List.Add Dog; Animal_List.Add Puppy; } private int Age { get { return age; } set { age = value; } } public string fav_food { get; private set; } public abstract class Animal { protected int age { get; set; } protected string name { get; set; } protected string fav_food { get; set; } protected string breed { get; set; } protected bool hungry { get; set; } public Animal(string name, int age, string fav_food) { } public virtual void Interact() { } public virtual void Eat() { } public virtual void Hungry_Animal() { } public override string ToString() { return base.ToString(); } } public class Cat : Animal { public Cat(string name, int age, string fav_food) : base(name, age, fav_food) { Name = name; Age = age; Fav_Food = fav_food; } public string Name { get { return name; } set { name = value; } } public int Age { get { return age; } set { age = value; } } public override void Hungry_Animal() { } public override void Eat() { Console.Write("What do you want to feed {0} with?", Name); Console.Write("\n1. Fish"); Console.Write("\n2. Meat"); Console.Write("\nYour choice: "); int answer = int.Parse(Console.ReadLine()); { if (answer == 1) { Console.Write("{0} is now full after eating his favourite food {1}", Name, fav_food); } if (answer == 2) { Console.Write("{0} doesn't like Meat and will get food on his own!", Name); Random rdmr = new Random(); int mousechans = rdmr.Next(0, 2); if (mousechans == 0) { Console.Write("{0} found a mouse, he is now full!", Name); } if (mousechans == 1) { Console.Write("{0} did not find any other food and is still hungry...", Name); } } } } public string Fav_Food { get { return fav_food; } set { fav_food = value; } } public override string ToString() { return string.Format("1. {0}", Name); } } public class Dog : Animal { public Dog(string name, int age, string fav_food) : base(name, age, fav_food) { Name = name; Age = age; } public string Name { get { return name; } set { name = value; } } public int Age { get { return age; } set { age = value; } } public override void Interact() { Random rdmr = new Random(); int interact = rdmr.Next(0, 2); if (interact == 0) { Console.Write("Joppe is playing with {0}", Name); } if (interact == 1) { Console.Write("{0} is too hungry to play...", Name); } } public string Fav_Food { get { return fav_food; } set { fav_food = value; } } public override string ToString() { return string.Format("2. {0}", Name); } } public class Puppy : Dog { public Puppy(string name, int age, object fav_food) { Name = name; Age = age; } public override void Interact() { Random rdmr = new Random(); int interact = rdmr.Next(0, 2); if (interact == 0) { Console.Write("Joppe is playing with {0}", Name); } if (interact == 1) { Console.Write("{0} is too hungry to play...", Name); } } public new string Fav_Food { get { return fav_food; } set { fav_food = value; } } public override string ToString() { return string.Format("3. {0}", Name); } class Program { static void Main(string[] args) { var Cat = new Cat("Gustaf"); var Dog = new Dog("Astro"); var Puppy = new Puppy("Ebbe"); } } } } }