更改GetOutput()方法,使其返回详细信息C#
这是一种万不得已的事情。我的一个实验室里有人问了我一个问题,我有问题,我无法解决,甚至无法理解,因为我的C#真的很差! 无论如何,最初的问题是: 在类更改GetOutput()方法,使其返回详细信息C#,c#,C#,这是一种万不得已的事情。我的一个实验室里有人问了我一个问题,我有问题,我无法解决,甚至无法理解,因为我的C#真的很差! 无论如何,最初的问题是: 在类DogChorus中,更改GetOutput()方法,使其返回创建的所有狗的详细信息,包括所有狗拥有的腿数。有一个提示是“您需要调用通过类名创建的staticNoOfLegs属性。 如果有人能给我任何帮助/提示,我将不胜感激! 两个类别的代码如下: namespace HelloDogs { class Dog {
DogChorus
中,更改GetOutput()
方法,使其返回创建的所有狗的详细信息,包括所有狗拥有的腿数。有一个提示是“您需要调用通过类名创建的staticNoOfLegs
属性。
如果有人能给我任何帮助/提示,我将不胜感激!
两个类别的代码如下:
namespace HelloDogs
{
class Dog
{
private string barkSound;
private string breed;
private int dogHeight;
private static int noOfLegs;
public static int NoOfLegs
{
get { return Dog.noOfLegs; }
set { Dog.noOfLegs = value; }
}
public int DogHeight
{
get { return dogHeight; }
set { dogHeight = value; }
}
private string dogColour;
public string DogColour
{
get { return dogColour; }
set { dogColour = value; }
}
public string Breed
{
get { return breed; }
set { breed = value; }
}
private string dogSpeech;
public Dog()
{
barkSound = "Woof!";
breed = "cocker spaniel";
dogHeight = 25;
dogColour = " White";
}
private bool isBig (int y)
{
int dogHeight = y;
if(dogHeight <50)
{
return false;
}
else
{
return true;
}
}
public string GetSpeech(int theDog)
{
if (isBig(theDog))
{
dogSpeech = "Hello. I am a " + breed + ". I am big. " + "I am " + dogHeight + " cm high! " +
"My coat is " + dogColour + barkSound;
return dogSpeech;
}
else
{
dogSpeech = "Hello. I am a " + breed + ". I am small. " + "I am " + dogHeight + " cm high! " +
"My coat is " + dogColour + barkSound;
return dogSpeech;
}
}
public void SetSound(String barkSound)
{
this.barkSound = barkSound;
}
public Dog(int dogHeight, string dogColour, string breed)
{
this.dogHeight = dogHeight;
this.dogColour = dogColour;
this.breed = breed;
}
}
}
namespace HelloDogs
{
class DogChorus
{
Dog lady;
Dog tramp;
Dog griff;
Dog lass;
public DogChorus()
{
lady = new Dog();
tramp = new Dog();
griff = new Dog();
lass = new Dog();
tramp.SetSound("Ruff!");
lass.SetSound("Howl!");
}
public string GetOutput()
{
return Dog.GetSpeech() + " \n " + Dog.NoOfLegs() + " \n " + Dog.Getbreed();
}
}
}
namespace HelloDogs
{
班犬
{
私人弦乐;
私家犬;
私人身高;
私有静态内部节点;
公共静态节点
{
获取{return Dog.noOfLegs;}
设置{Dog.noOfLegs=value;}
}
公共净高
{
获取{return doghight;}
设置{doghight=value;}
}
私家弦斗狗;
公共字符串狗颜色
{
获取{return dogColour;}
设置{dogColour=value;}
}
公弦品种
{
获取{返回品种;}
设置{bride=value;}
}
私语;
公犬()
{
汪汪;
繁殖=“可卡猎犬”;
狗高=25;
dogcolor=“白色”;
}
私人住宅面积大(国际)
{
int doghight=y;
如果(dogHeight您当前有此行:
return Dog.GetSpeech() + " \n " + Dog.NoOfLegs() + " \n " + Dog.Getbreed();
虽然NoOfLegs
是一个静态属性,GetSpeech
和Breed
不是。(Getbreed
甚至没有在任何地方声明)。这两个属性应该通过一个实例来访问,例如lady.Breed
,以获取特定狗的数据
因此,您需要访问每个实例的GetSpeech
和Breed
调用。也就是说:lady
、tramp
、griff
和lass
另外,由于NoOfLegs
和bride
是属性,而不是方法,因此不需要在末尾加括号。只需Dog.NoOfLegs
或lady.bride
另外,GetSpeech()
方法需要重新编写。它可能不需要任何参数
祝你好运。虽然家庭作业帮助在StackOverflow问题上(通常)是不受欢迎的,但针对这样一个特定(更不用说简单)问题的家庭作业帮助往往会有点不受欢迎。你应该首先诚实地努力,然后如果你仍然有一个特定的问题,你可以回来就特定的问题寻求帮助。(具体问题是错误消息等。)练习的目的是让你试着弄明白并学习一些东西:这句话它返回所有创建的狗的详细信息,包括腿的数量
意味着应该返回狗的属性狗的身高、品种、颜色
。现在你有几个选项来更改GetOutput()你能描述一下你尝试过的和你被卡住的地方吗?这个问题看起来像是一个代码编写服务的请求。请考虑重新格式化并包括你的代码片段,只强调一个有问题的部分。最多的,现在仍然是,是针对这个特定部分的:公共字符串GetOutput(){return Dog.GetSpeech()+“\n”+Dog.NoOfLegs()+“\n”+Dog.getbride();}GetSpeech的错误是没有重载,因为GetSpeech接受0个参数。@user3191460这是因为GetSpeech
要求您将其作为一个实例方法引用,并为theDog
提供一个int
值。它的使用示例(我能收集到的最好结果):lady.GetSpeech(lady.doghight)
。