C# Class (original) (raw)
Summary: in this tutorial, you’ll learn about the C# class and how to define a custom class.
Introduction to the objects and classes
Objects are one of the essential concepts in object-oriented programming. Objects have states and behaviors:
- States represent the data that the object holds at a particular point in time.
- Behaviors represent the actions that the object can perform to manipulate its states.
C# uses class-based object-oriented programming. Before creating objects, you need to define a class. A class is a blueprint for creating objects.
Define a class
To define a new class, you use the class
keyword followed by the class name. By convention, a class name is in the Pascal case, such as Person
, SalesPerson
, etc.
To create a new class, you follow these steps:
First, create a new Person.cs
file.
Second, define the Person
class in the Person.cs
file:
class Person { }
Code language: C# (cs)
Create objects from the class
To create objects from the Person
class, you follow these steps:
First, create the Program.cs
file.
Second, create a new object from the Person
class by using the new
keyword:
Person p1 = new Person();
Code language: C# (cs)
Or you can use the var
keyword:
var p1 = new Person();
Code language: C# (cs)
Or
Person p1 = new();
Code language: C# (cs)
In this example, the p1
is a new object of the Person
class. It is also called an instance of the Person
class.
Add fields to the class
The following add three fields to the Person
class: FirstName
, LastName
, and Age
. These fields represent the states of a person
object:
class Person { public string FirstName; public string LastName; public byte Age; }
Code language: C# (cs)
The public
keyword controls the access level to access the fields from both inside and outside the Person
class. See the public & private access modifier tutorial for more information.
Since the Person
class has three fields, and all of its objects can access them. For example, the following creates a new instance of the Person
class and assigns the values to each field:
`using HR;
Person p1 = new();
p1.FirstName = "John"; p1.LastName = "Doe"; p1.Age = 25;`Code language: C# (cs)
From the Person
class, you can create as many objects as you want to. For example, the following creates two Person’s objects with the names p1
and p2
:
`using HR;
Person p1 = new(); p1.FirstName = "John"; p1.LastName = "Doe"; p1.Age = 25;
Person p2 = new(); p2.FirstName = "Jane"; p2.LastName = "Doe"; p2.Age = 22;`Code language: C# (cs)
Note that p1
and p2
have the same set of fields. However, their field values are different.
Add methods to a class
The following adds the GetFullName()
method to the Person
class:
`// Person.cs
class Person { public string FirstName; public string LastName; public byte Age;
public string GetFullName()
{
return $"{FirstName} {LastName}";
}
}`Code language: C# (cs)
The GetFullname()
is like a function with the public
keyword. When you define a function inside a class, it is called a method.
The GetFullName()
method concatenates the first name with the last name and returns the full name as a string.
The public
keyword indicates that it is accessible from both inside and outside the Person
class.
To call the GetFullName()
method from a Person
object, you use the object name, dot operator, and the method name. For example:
`// Program.cs
Person p1 = new(); p1.FirstName = "John"; p1.LastName = "Doe"; p1.Age = 25; Console.WriteLine(p1.GetFullName());
Person p2 = new(); p2.FirstName = "Jane"; p2.LastName = "Doe"; p2.Age = 22; Console.WriteLine(p2.GetFullName());`Code language: C# (cs)
Output:
John Doe Jane Doe
Code language: C# (cs)
Summary
- Objects have states and behaviors.
- C# uses a class-based object-oriented programming approach.
- A class is a blueprint for creating objects. Objects are instances of a class.
- Use the
class
keyword to define a class. - A class has fields and methods.
- Use the
new
keyword to create a new object from a class.
Was this tutorial helpful ?