EDUCBA

EDUCBA

MENUMENU
  • Free Tutorials
  • Free Courses
  • Certification Courses
  • 600+ Courses All in One Bundle
  • Login

C# check object type

Home » Software Development » Software Development Tutorials » C# Tutorial » C# check object type

C# check object type

Introduction to C# check object type

C# is a programming language that considers object as the base class for all the derived classes in a program. All types get inherited from objects which are further used for performing some functionality by extending the properties of derived classes. C# object being derived have some methods and abilities to reference and dereference any object of the base type. Referencing of an object in both the cases of derived and base classes plays an important role for checking the object type being created. Casting with the base class object is mandatory to make it compatible to check the object type.

Syntax:

Start Your Free Software Development Course

Web development, programming languages, Software testing & others

The syntax flow for checking the type of object in C# is to get the type of object and its associated nature of object.

public Type GetType ();

And if in case types of object is already identified then typeof() is used for identifying the C# object

typeof()

How to check object type in C#?

Object type checking in C# plays a pivotal role in determining the type and details of the object related to the implementation. These details are very important for programmers in terms of implementation and requirement fulfillment. Thus, there are certain ways using which the Object in C# can be checked which are as follows :

  • GetType() is a method that is quite frequently used to check the object type in C#. This method is used to work at runtime and is mostly used to call a single object as an entity at the time of execution.
  • Get type() method is a method in the object class that is used for making a referencing for an instance of the class.
  • Type of is used for making the object type compiled into one and is then used for making the overall to obtain the type of object and its description at the time of compilation which makes operand of its type known whether given by user or is provided by the system.
  • Whether we use Get type() method or type 0f in case of some known type of arguments or parameters it all depends on the system and its return type that how we are going to return the value in it for checking and modification.
  • At last, after using both the methods it creates metadata of information or say metadata of the entire class which is used for storing the result somehow at the time of creation of an object in the C# program.
  • Also, there is a very important point to be kept in mind like say that the object type in C# is declared before execution then, in that case, the get type() method will help in fetching and if in case the object type to be created in C# is not declared and depends on the type already present as metadata then in that case type of can be used at the time of runtime.
  • Is operator is also used to get the value which is mostly used when an instance returns a value as true or false signifying that the instance is in the form of an inheritance tree?

Examples

Let us discuss examples of C# check object type.

Example #1

This program demonstrates the usage of object in the C# with the already inbuilt object within the system as shown in the output.

Code:

using System;
using System.Text;
class Demo_Prog
{
static void Main()
{
object vl_1 = new StringBuilder();
Console.WriteLine(vl_1.GetType());
}
}

Popular Course in this category
C# Training Program (6 Courses, 17 Projects)6 Online Courses | 17 Hands-on Project | 89+ Hours | Verifiable Certificate of Completion | Lifetime Access
4.6 (8,400 ratings)
Course Price

View Course

Related Courses
ASP.NET Training (8 Courses, 19 Projects).NET Training Program (4 Courses, 19 Projects)

Output:

C# check object type 1

Example #2

This program demonstrates the use of GetType() method which is used very frequently to check the object type of C# also with the use when it is needed at the time of run time execution as shown in the output.

Code:

using System;
namespace Consl_App1
{
class Fruit { }
class Kiwi : Fruit { }
class Pro_g
{
static Fruit newFruit()
{
return new Kiwi();
}
static void Main(string[] args)
{
Fruit f = newFruit();
Console.WriteLine(typeof(Fruit));
Console.WriteLine(f.GetType());
Console.ReadKey();
}
}
}

Output:

C# check object type 2

Example #3

This program demonstrates the derived object in the class from the base object as shown in the output to identify the type of object within the class in C#.

Code:

using System;
public class M_Bs_Cl {
}
public class M_Drvd_Cl: M_Bs_Cl {
}
public class Test
{
public static void Main()
{
M_Bs_Cl m_bs = new M_Bs_Cl();
M_Drvd_Cl m_Drvd = new M_Drvd_Cl();
object obj = m_Drvd;
M_Bs_Cl bsc = m_Drvd;
Console.WriteLine("m_bs: Type is obj{0}", m_bs.GetType());
Console.WriteLine("m_Drvd: Type is obj{0}", m_Drvd.GetType());
Console.WriteLine("object obj = m_Drvd: obj_Type is {0}", obj.GetType());
Console.WriteLine("M_Bs_Cl b = myDerived: Type is {0}", bsc.GetType());
}
}

Output:

C# check object type 3

Example #4

This program demonstrates the usage of object with all the various types of arguments as object as shown in the output. These various types of arguments are used to get the value and the type of object is identified with nature it possesses as per requirement.

Code:

using System;
class Demo_Prog
{
static void Main()
{
string vl_1 = "Java Pearl Ruby";
Verify(vl_1);
Verify((object)vl_1);
int num = 150;
Verify(num);
Verify((object)num);
Verify(null);
}
static void Verify(object vl_1)
{
Console.WriteLine(vl_1 != null);
if (vl_1 is string)
{
Console.WriteLine("Value_Of_String: {0}", vl_1);
}
else if (vl_1 is int)
{
Console.WriteLine("Value_Of_int: {0}", vl_1);
}
}
}

Output:

C# check object type 4

Example #5

This program demonstrates the is an operator with respect to the object when it must return a value as true for any instance where the reference shows the inheritance in the tree as shown in the output.

Code:

using System;
public class C1
{
}
public class C2: C1
{
}
public class C3 {
}
public class sck_br {
public static void Main()
{
C1 ob_1 = new C1();
C2 ob_2 = new C2();
Console.WriteLine(ob_1 is C1);
Console.WriteLine(ob_1 is Object);
Console.WriteLine(ob_2 is C2);
Console.WriteLine(ob_2 is Object);
Console.WriteLine(ob_2 is C2);
Console.WriteLine(ob_2 is C3);
Console.WriteLine(ob_2 is C3);
}
}

Output:

Example 5

Conclusion

C# object type is mostly used by the programmers in order to fetch the detailed information about the object at the time of compilation or sometimes at the time of runtime execution of the program. The type of value returned depends on the type of variable or object that is required at the time of execution or compilation. Thus, creating C# object type plays a very important role in terms of metadata of information.

Recommended Articles

This is a guide to C# check object type. Here we also discuss the introduction to C# check object type, How to check object type in C#? with different examples. You may also have a look at the following articles to learn more –

  1. C# object to XML
  2. C# Object Dispose
  3. C# Local Functions
  4. String to Date C#

All in One Software Development Bundle (600+ Courses, 50+ projects)

600+ Online Courses

50+ projects

3000+ Hours

Verifiable Certificates

Lifetime Access

Learn More

0 Shares
Share
Tweet
Share
Primary Sidebar
C sharp Tutorial
  • Basic
    • Uses Of C#
    • C# Versions
    • C# Data Types
    • Variables in C#
    • Namespaces in C#
    • C# Compilers
    • C# Keywords
    • Iterators in C#
    • Objects in C#
    • C# Object Dispose
    • C# object to XML
    • C# check object type
    • C# Object Serialization
    • Pointers in C#
    • C# Literals
    • C# Commands
    • C# Custom Attribute
    • Type Casting in C#
    • String vs String C#
    • C# Struct vs Class
  • Operators
    • Logical Operators in C#
    • Conditional Operators in C#
    • Bitwise Operators in C#
    • C# OR Operator
    • C# Ternary Operators
    • Operator Precedence in C#
  • Control Statement
    • C# if Statement
    • Else If in C#
    • Continue in C#
    • Break in C#
    • Switch Statement in C#
    • Goto Statement in C#
  • Loops
    • C# For Loop
    • C# While Loop
    • C# do-while loop
    • C# foreach Loop
  • Arrays
    • Arrays in C#
    • 2D Arrays in C#
    • C# Jagged Arrays
    • String Array in C#
    • C# Multidimensional Arrays
  • Constructor and Destructor
    • Constructor in C#
    • Copy Constructor in C#
    • Static Constructor in C#
    • Destructor in C#
  • overloading and overrideing
    • Overloading and Overriding in C#
    • Overloading in C#
    • Overriding in C#
    • Method Overloading in C#
    • Method Overriding in C#
    • Operator Overloading in C#
  • Functions
    • C# Functions
    • C# String Functions
    • Math Functions in C#
    • Recursive Function in C#
    • C# Anonymous Functions
    • C# Local Functions
    • Enum in C#
    • Trim() in C#
    • clone() in C#
    • C# random
    • C# String Format()
    • C# String Interpolation
    • C# StartsWith()
    • C# String IndexOf()
    • DateTime in C#
    • C# Nullable
    • C# nameof
    • C# checked
    • C# String PadLeft
    • Convert String to Double in C#
    • Convert int to String C#
    • String to Date C#
    • C# intern()
    • C# Stopwatch
    • C# DirectoryInfo
    • C# Compare()
    • C# Base
    • C# SOAP
    • Lock in C#
  • Advanced
    • Inheritance in C#
    • Exception Handling in C#
    • Types of Exception in C#
    • C# FileNotFoundException
    • C# NullReferenceException
    • C# OutOfMemoryException
    • C# StackOverflowException
    • Custom Exception in C#
    • What is Multithreading in C#
    • C# finally
    • C# System.IO
    • What is StringBuilder in C#
    • DataReader C#
    • BinaryWriter in C#
    • C# BinaryReader
    • TextWriter in C#
    • TextReader in C#
    • C# StringReader
    • C# StringWriter
    • C# StreamReader
    • C# StreamWriter
    • C# FileInfo
    • What is Design Pattern in C#?
    • Multithreading in C#
    • Sorting in C#
    • Bubble Sort in C#
    • C# SortedList
    • C# SortedSet
    • C# SortedDictionary
    • Abstract Class in C#
    • Access Modifiers in C#
    • C# Generics
    • Deserialization in C#
    • C# Thread
    • C# Thread Join
    • C# Thread Sleep
    • C# Thread Synchronization
    • C# Class
    • Sealed in C#
    • Sealed Class in C#
    • Polymorphism in C#
    • C# Call By Reference
    • Virtual Keyword in C# 
    • Yield Keyword in C#
    • Regular Expression in C#
    • C# Lambda Expression
    • C# Predicate
    • Convert Object to JSON C#
    • Checkbox in C#
    • C# MessageBox
    • Collections in C#
    • List in C#
    • C# LinkedList
    • Listbox in C#
    • Protected in C#
    • C# EventHandler
    • Private in C#
    • this Keyword in C#
    • Static Keyword in C#
    • C# Out Parameter
    • Assert in C#
    • C# Delegates
    • C# Interface
    • Generics in C#
    • Timer in C#
    • C# Serialization
    • Metadata in C#
    • C# Stack
    • C# Using Static
    • Queue in C#
    • C# File.Exists
    • C# Tuples
    • C# Create JSON Object
    • Partial in C#
    • C# readonly
    • C# Action Delegate
    • C# Await Async
    • C# Dictionary
    • IEnumerable C#
    • C# Data Grid View
    • C# Dynamic
    • Web Services in C#
    • C# Pattern Matching
    • C# Extension Methods
    • C# XmlSerializer
  • Programs
    • Patterns in C#
    • Swapping in C#
    • Palindrome in C#
    • Factorial in C#
    • Fibonacci Series in C#
    • Random Number Generator in C#
    • Prime Numbers in C#
    • Armstrong Number in C#
    • Reverse String in C#
  • Interview questions
    • C# Interview Questions and Answers
    • C# OOP Interview Questions
    • C# Design Pattern Interview Questions

Related Courses

C# Certification Training

ASP.NET Course

.NET Course

Footer
About Us
  • Blog
  • Who is EDUCBA?
  • Sign Up
  • Corporate Training
  • Certificate from Top Institutions
  • Contact Us
  • Verifiable Certificate
  • Reviews
  • Terms and Conditions
  • Privacy Policy
  •  
Apps
  • iPhone & iPad
  • Android
Resources
  • Free Courses
  • Java Tutorials
  • Python Tutorials
  • All Tutorials
Certification Courses
  • All Courses
  • Software Development Course - All in One Bundle
  • Become a Python Developer
  • Java Course
  • Become a Selenium Automation Tester
  • Become an IoT Developer
  • ASP.NET Course
  • VB.NET Course
  • PHP Course

© 2020 - EDUCBA. ALL RIGHTS RESERVED. THE CERTIFICATION NAMES ARE THE TRADEMARKS OF THEIR RESPECTIVE OWNERS.

EDUCBA
Free Software Development Course

Web development, programming languages, Software testing & others

*Please provide your correct email id. Login details for this Free course will be emailed to you
Book Your One Instructor : One Learner Free Class

Let’s Get Started

This website or its third-party tools use cookies, which are necessary to its functioning and required to achieve the purposes illustrated in the cookie policy. By closing this banner, scrolling this page, clicking a link or continuing to browse otherwise, you agree to our Privacy Policy

EDUCBA

*Please provide your correct email id. Login details for this Free course will be emailed to you
EDUCBA Login

Forgot Password?

EDUCBA
Free Software Development Course

Web development, programming languages, Software testing & others

*Please provide your correct email id. Login details for this Free course will be emailed to you

Special Offer - C# Certification Training Learn More