interface and struct boxing

struct is a value type while interface is a reference type.

A cast from struct to an interface is a boxing.


using System;
interface Printable
{
    void print();
}

struct Rectangle : Printable
{
    public void print()
    {
        Console.WriteLine("rectangle");
    }
}


class Test
{
    static void Main()
    {

        Printable p = new Rectangle(); // boxing
        p.print();
    }
}

The output:


rectangle
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.