<< Chapter < Page | Chapter >> Page > |
Methods in C# are analogous to the functions defined inside a class in C++. However, they are called methods instead of functions in C#.
The Main method in Listing 2 begins with the keyword static and ends with the comment "end Main".
As you may have guessed already, the call to the WriteLine method inside the Main method causes the WriteLine method's argument to be displayed on the system console.
Console is the name of a static class in the System namespace. The significance of the class being static is that "You do not need to declare an instance of a static class in order to access its members." Therefore, as I mentioned earlier, this program doesn't purposely instantiate any new objects.
According to the documentation , the Console class "Represents the standard input, output, and error streams for console applications. This class cannot be inherited."
The System namespace actually belongs to the Microsoft .NET framework and the classes inthe namespace are available for use by several different programming languages that also belong to the framework such as C#, VB.NET, etc. (See the online .NET Framework Class Library here .)
The Console class has many members, about nineteen of which are overloaded versions of the method named WriteLine . (Method overloading means that the same method name can be used two or more times in the same scope as long as the argument list differs fromone version to the next.)
The version of the WriteLine method that is called in Listing 2 requires a string object as an incoming parameter. According to the documentation, the behavior of this version of the method is:
"Writes the specified string value, followed by the current line terminator, to the standard output stream."
Note the period that joins the name of the class and the name of the methodin Console.WriteLine . When used in this way, the period is often referred to as the dot operator . The dot operator is used in a variety of similar but different ways in C#. In this case, it tells the compilerto look in the Console class for a method named WriteLine that requires an incoming parameter of type string . (It is actually the type of parameter being passed to the method, string , that specifies which version of the WriteLine method will be executed.)
Briefly, namespaces provide a way to partition the class library and the new classes defined in a program so that it is possible to reference two classeswith the same name in the same scope as long as they are in different namespaces. Therefore, whenever you reference a class name in your code, youmust tell the compiler which namespace it resides in. This can be done in two ways. One way is to write the namespace in front of the class name joined by thedot operator as in
System.Console
or
Microsoft.Xna.Framework.Graphics.SpriteBatch
The second way to tell the compiler which namespace the class resides in is through the use of a "using" declaration.
Notification Switch
Would you like to follow the 'Xna game studio' conversation and receive update notifications?