is Checker : is « Language Basics « C# / C Sharp






is Checker

 
using System;
using System.Collections.Generic;
using System.Text;

class Checker {
    public void Check(object param1) {
        if (param1 is ClassA)
            Console.WriteLine("Variable can be converted to ClassA.");
        else
            Console.WriteLine("Variable can't be converted to ClassA.");
        if (param1 is IMyInterface)
            Console.WriteLine("Variable can be converted to IMyInterface.");
        else
            Console.WriteLine("Variable can't be converted to IMyInterface.");

        if (param1 is MyStruct)
            Console.WriteLine("Variable can be converted to MyStruct.");
        else
            Console.WriteLine("Variable can't be converted to MyStruct.");
    }
}

interface IMyInterface {
}

class ClassA : IMyInterface {
}

class ClassB : IMyInterface {
}
class ClassC {
}

class ClassD : ClassA {
}

struct MyStruct : IMyInterface {
}

class Program {
    static void Main(string[] args) {
        Checker check = new Checker();
        ClassA try1 = new ClassA();
        ClassB try2 = new ClassB();
        ClassC try3 = new ClassC();
        ClassD try4 = new ClassD();
        MyStruct try5 = new MyStruct();
        object try6 = try5;
        Console.WriteLine("Analyzing ClassA type variable:");
        check.Check(try1);

        Console.WriteLine("\nAnalyzing ClassB type variable:");
        check.Check(try2);
        Console.WriteLine("\nAnalyzing ClassC type variable:");
        check.Check(try3);
        Console.WriteLine("\nAnalyzing ClassD type variable:");
        check.Check(try4);
        Console.WriteLine("\nAnalyzing MyStruct type variable:");
        check.Check(try5);
        Console.WriteLine("\nAnalyzing boxed MyStruct type variable:");
        check.Check(try6);
        Console.ReadKey();
    }
}

 








Related examples in the same category

1.Using the is Keyword to Work with an Interface
2.The is operator confirms that the employee is a manager.
3.choose between two overloaded methods at run-time using the 'is' keyword