/*
A Programmer's Introduction to C# (Second Edition)
by Eric Gunnerson
Publisher: Apress L.P.
ISBN: 1-893115-62-3
*/
// 14 - Operators and Expressions\Type operators\Is
// copyright 2000 Eric Gunnerson
using System;
interface IAnnoy
{
void PokeSister(string name);
}
class Brother: IAnnoy
{
public void PokeSister(string name)
{
Console.WriteLine("Poking {0}", name);
}
}
class BabyBrother
{
}
public class TypeoperatorsIs
{
public static void AnnoyHer(string sister, params object[] annoyers)
{
foreach (object o in annoyers)
{
if (o is IAnnoy)
{
IAnnoy annoyer = (IAnnoy) o;
annoyer.PokeSister(sister);
}
}
}
public static void Main()
{
TestoperatorsIs.AnnoyHer("Jane", new Brother(), new BabyBrother());
}
}
|