Skip to content

1.5 Static versus non-static

  1. Add the following code to the Circle class:

    1
    2
    3
    4
    public static string Definition()
    {
        return "A circle is a collection of points that all have the same distance to a center point.";
    }
    

    Note the static keyword.

  2. Add the following code as the first line to the Main method:

    1
    Console.WriteLine(Circle.Definition());
    

    so that your code looks like this:

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    Console.WriteLine(Circle.Definition());
    Circle myAllArgsCircle = new Circle(3, 1, 4, "green");
    Console.WriteLine(myAllArgsCircle.CalculatePerimeter());
    Console.WriteLine(myAllArgsCircle.CalculateArea());
    
    Circle myDefaultCircle = new Circle();
    Console.WriteLine(myDefaultCircle.CalculatePerimeter());
    Console.WriteLine(myDefaultCircle.CalculateArea());
    
    Circle myRadiusCircle = new Circle(6);
    Console.WriteLine(myRadiusCircle.CalculatePerimeter());
    Console.WriteLine(myRadiusCircle.CalculateArea());
    

    The Definition() method is available without creating an instance of the Circle class! The method is called via the class, so as Circle.Definition(). The method is, however, not available for instances, that is, myAllArgsCircle.Definition() cannot be used.

  3. Run this program.