C# class

Signaler
Messages postés
14
Date d'inscription
mardi 17 novembre 2009
Statut
Membre
Dernière intervention
2 décembre 2012
-
Messages postés
1137
Date d'inscription
lundi 17 novembre 2003
Statut
Membre
Dernière intervention
23 janvier 2016
-
Je suis actuelement entrain d'apprendre C# et je je ne m'en sort pas tres bien. Depuis quelques jours j'essaie d'écrire un bout de code dans la classe DogChorus et de changer le GetOutput () méthode. Normalement, une boîte de message affichera un message contenant le nombre de pattes que tous les chiens ont et montrera les détails de tous les chiens créés.

Voici les 2 class que j'ai cree (class Dog et class DogChorus)


[b]namespace HelloDogs
{
class Dog

{
private int dogHeight;
private string dogColour;
private static int noOfLEgs;
private string breed;
private string barkSound;
private string dogSpeech;


public int DogHeight
{
get { return dogHeight; }
set { dogHeight = value; }
}

public string DogColour
{
get { return dogColour; }
set { dogColour = value; }
}

public static int NoOfLEgs
{
get { return Dog.noOfLEgs; }
set { Dog.noOfLEgs = value; }
}

public string Breed
{
get { return breed; }
set { breed = value; }
}

public static int noOfLegs = 4;

public Dog ()//A constructor is created.
{
dogColour = "Black and yellow";
breed = "german bush";
barkSound = "Woof!";
}

private void SetSound(String barkSound)
{
this.barkSound = barkSound;
}
private bool IsBig(int y)
{
int size = y;
if (size < 50)
{
return false;
}
else
{
return true;

}
}

public string GetSpeech(int passed_size)
{
if (IsBig(passed_size) == true)
{
dogSpeech = "Hello. I am a " + dogColour + ". " + breed + " , I mesure ." + dogHeight + ". " + barkSound + " I am Big ";

}
else
{
dogSpeech = "Hello. I am a " + dogColour + ". " + breed + " , I mesure ." + dogHeight + ". " + barkSound + " I am small ";

}
return dogSpeech;
}

private void SetSound(String barkSound)
{
this.barkSound = barkSound;
}
}
}/b

Voici la 2eme class:

namespace HelloDogs
{
class DogChorus
{
Dog dogColour;
Dog breed;
Dog dogHeight;
Dog barkSound;
Dog noOfLegs;
public string dogSpeech { get; set; }

public DogChorus()
{
dogColour = new Dog();
breed = new Dog();

}

public string GetOutput()
{

MessageBox.Show("All the dogs have " + noOfLegs + "legs");

return dogSpeech;
}

}
}

1 réponse

Messages postés
1137
Date d'inscription
lundi 17 novembre 2003
Statut
Membre
Dernière intervention
23 janvier 2016
20
Salut,

ta variable statique noOfLegs n,e peut pas être appelée directement (pas d'héritage ici),
il faut donc la préfixer avec le nom de sa classe :

Dog.noOfLegs

ou faire une fonction statique d'accès à cette variable si elle avait été "private".

bye.