C# - Program Structure
C# - Program Structure
Before we study basic building blocks of the C# programming language, let us look at a bare
minimum C# program structure so that we can take it as a reference in upcoming chapters.
A C# program follows a simple structure with essential components. Heres what a basic program
looks like:
Advertisement
Let us look at a simple code that prints the words "Hello World" −
Open Compiler
using System;
namespace HelloWorldApplication {
class HelloWorld {
static void Main(string[] args) {
/* my first program in C# */
Console.WriteLine("Hello World");
Console.ReadKey();
}
}
}
When this code is compiled and executed, it produces the following result −
Hello World
The first line of the program using System; - the using keyword is used to include the
System namespace in the program. A program generally has multiple using statements.
The next line has the namespace declaration. A namespace is a collection of classes.
The HelloWorldApplication namespace contains the class HelloWorld.
The next line has a class declaration, the class HelloWorld contains the data and method
definitions that your program uses. Classes generally contain multiple methods. Methods
define the behavior of the class. However, the HelloWorld class has only one method
Main.
The next line defines the Main method, which is the entry point for all C# programs.
The Main method states what the class does when executed.
The next line /*...*/ is ignored by the compiler and it is put to add comments in the
program.
The Main method specifies its behavior with the statement Console.WriteLine("Hello
World");
WriteLine is a method of the Console class defined in the System namespace. This
statement causes the message "Hello, World!" to be displayed on the screen.
The last line Console.ReadKey(); is for the VS.NET Users. This makes the program wait
for a key press and it prevents the screen from running and closing quickly when the
program is launched from Visual Studio .NET.
Open Compiler
namespace MyApplication
{
class Program
{
static void Main()
{
Console.WriteLine("Hello from MyApplication!");
}
}
}
When the above code is compiled and executed, it produces the following result −
The using statement imports namespaces, allowing access to built-in classes and methods.
Open Compiler
using System; // Enables Console.WriteLine() function
class Example
{
static void Main()
{
Console.WriteLine("Using directive example.");
}
}
When the above code is compiled and executed, it produces the following result −
C# is an object-oriented language, and every program must have at least one class.
Open Compiler
class Car
{
string model = "Tesla";
When the above code is compiled and executed, it produces the following result −
The Main() method serves as the entry point for every C# program.
Open Compiler
using System;
class Start
{
static void Main()
{
Console.WriteLine("This is the main entry point of the program.");
}
}
When the above code is compiled and executed, it produces the following result −
Open Compiler
class StatementsExample
{
static void Main()
{
int a = 5, b = 10;
int sum = a + b;
Console.WriteLine("Sum: " + sum);
}
}
When the above code is compiled and executed, it produces the following result −
Sum: 15
6. Access Modifiers
Open Compiler
class Example
{
private int secretNumber = 42; // Private: Only accessible within this
class
class Program
{
static void Main()
{
Example obj = new Example();
obj.Display();
}
}
When the above code is compiled and executed, it produces the following result −
Open Compiler
using System;
namespace School
{
class Student
{
public string Name;
public int Age;
class Program
{
static void Main()
{
Student student1 = new Student();
student1.Name = "Alice";
student1.Age = 14;
student1.DisplayStudentInfo();
}
}
}
When the above code is compiled and executed, it produces the following result −
C# is case sensitive.
All statements and expression must end with a semicolon (;).
The program execution starts at the Main method.
Unlike Java, program file name could be different from the class name.
If you are using Visual Studio.Net for compiling and executing C# programs, take the following
steps −
You can compile a C# program by using the command-line instead of the Visual Studio IDE −