Kezdőoldal » Számítástechnika » Programozás » System. NullReferenceException...

System. NullReferenceException c#?

Figyelt kérdés

Tanulgatom az OOP-t, de beleütköztem a fenti hibába, és öteletem sincs, mit csináltam rosszul.


Nagyra értékelnék minden segítséget!



using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;


namespace ConsoleApp6

{

class Program

{

public class Owner

{

int age;

string name;

public string Name { get; set; }

public string Age { get; set; }

public Owner(int age,string name)

{

this.age = age;

this.name = name;

}

}

public class Slave

{

Owner o;

int age;

string name;

public string Name { get; set; }

public string Age { get; set; }

public Owner O{ get; set; }

public Slave(int age, string name, Owner o)

{

this.age = age;

this.name = name;

this.o = o;

}

}

public class Gun

{

Slave user;

int age;

string name;

public string Name { get; set; }

public string Age { get; set; }

public Slave User{ get; set; }

public Gun(int age, string name,Slave user)

{

this.age = age;

this.name = name;

this.user = user;

}

}

static void Main(string[] args)

{

Gun[] w = new Gun[2]

{

new Gun(1,"a",new Slave(2,"b", new Owner(3,"c"))),

new Gun(4,"d",new Slave(5,"e", new Owner(6,"f")))

};

Console.WriteLine(w[0].User.O.Age);

Console.ReadLine();

}

}

}



2018. febr. 13. 10:32
 1/5 anonim ***** válasza:
Valahol egy null referenciára hivatkozol.
2018. febr. 13. 11:07
Hasznos számodra ez a válasz?
 2/5 anonim ***** válasza:

Ja... Már látom.

Teljesen rosszul használod a Propertyket, keverni próbálod a hagyományos és automatic propertyket, rosszul.

2018. febr. 13. 11:38
Hasznos számodra ez a válasz?
 3/5 anonim ***** válasza:

Igazából ennek az egésznek semmi értelme.

Mit akar jelenteni egy fegyver neve meg életkora?

2018. febr. 13. 11:46
Hasznos számodra ez a válasz?
 4/5 anonim ***** válasza:

Az ún. automatikus tulajdonságok (ilyet hoz létre a "public típus név {get; set;}" utasítás) teljesen önállóak, nem kell és nem is szabad hozzájuk azonos nevű változót deklarálni. Egyszerűen csak ennyit kell tenni pl.:


public class Owner

{

public string Name { get; set; }

public int Age { get; set; }

public Owner(int age, string name)

{

Age = age;

Name = name;

}

2018. febr. 13. 12:07
Hasznos számodra ez a válasz?
 5/5 anonim ***** válasza:
Valahogy így van értelme: [link]
2018. febr. 13. 12:08
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!