Understanding C#'s String.GetType() Method: Runtime Type Information Retrieval

Learn about C#'s `GetType()` method and its use in retrieving runtime type information. This tutorial explains its functionality, demonstrates its usage with examples, and highlights its importance in reflection and dynamic type manipulation.



Understanding C#'s `String.GetType()` Method

The C# `GetType()` method (available on all objects) returns a `Type` object that describes the type of the object it's called on. This is a fundamental method used extensively in reflection, where you need to dynamically examine and interact with types at runtime.

`GetType()` Method Signature


public Type GetType();

The method takes no parameters and returns a `Type` object. The `Type` object contains metadata about the object's type (name, methods, properties, etc.).

Example: Getting the Type of a String


using System;

public class GetTypeExample {
    public static void Main(string[] args) {
        string myString = "Hello, world!";
        Type stringType = myString.GetType();
        Console.WriteLine(stringType); // Output: System.String
    }
}

This example demonstrates how to use `GetType()` to get the type of a string variable. The output shows that the type is `System.String`.

Using `GetType()` in Reflection

The `Type` object returned by `GetType()` is extensively used in reflection. Reflection lets you examine and manipulate types at runtime. You can use the `Type` object to access methods, properties, and other members of the object.