Codewars 8 Kyu : Classy Classes

题目

Classy Classes
Basic Classes, this kata is mainly aimed at the new JS ES6 Update introducing classes

Task

Your task is to complete this Class, the Person class has been created. You must fill in the Constructor method to accept a name as string and an age as number, complete the get Info property and getInfo method/Info getter which should return

johns age is 34

Reference

https://docs.microsoft.com/zh-cn/dotnet/csharp/programming-guide/classes-and-structs/using-properties(原链接为英文版,笔者换成了中文版)

代码

public class Person
{  
  //字段
  private string name;
  private int age;
  //属性
  public string Info {
    get {
      return this.Method();
    }
  }
  //方法
  public string Method()
  {
    string output=string.Format("{0}s age is {1}",this.name, this.age);
    return output;
  }
  //构造函数
  public Person(string n, int a){
    this.name = n;
    this.age = a;
  }
}

解题思路

本题要求我们分别对构造函数、属性和函数三者进行编写。
1. 我们需要了解如何写一个构造方法(构造方法和class同名、无返回方法,需要写参数列表);我们在构造函数里为数据成员指定初始值;
2. 属性到底是做什么用的(属性结合了字段和方法的多个方面);据本题要求,需要在属性中返回函数的结果;
3. 函数需要实现的功能(题目要求函数可以返回一句字符串,这里涉及到字符串格式方面的知识)。

参考资料:

  1. 构造函数
    https://docs.microsoft.com/zh-cn/dotnet/csharp/programming-guide/classes-and-structs/constructors
  2. 使用属性
    https://docs.microsoft.com/zh-cn/dotnet/csharp/programming-guide/classes-and-structs/using-properties
  3. 字符串内插
    https://docs.microsoft.com/zh-cn/dotnet/csharp/tutorials/intro-to-csharp/interpolated-strings?tutorial-step=1

发表评论

您的电子邮箱地址不会被公开。