Tapez la sécurité avec des génériques en Java

J'ai rencontré un comportement de génériques en Java que j'ai complètement ne peut pas comprendre (avec mon .NET l'arrière-plan).

public class TestGeneric<T>
{
    public void get (Object arg)
    {
        T temp = (T) arg;

        System.out.println(temp.toString());

        return;
    }
}

TestGeneric<Integer> tg = new TestGeneric<Integer>();
tg.get("Crack!!!");

S'il vous plaît dites-moi pourquoi je ne reçois pas ClassCastException en obtenir, en outre, dans l'Idée, je vois temp que String après la cession et de la valeur de "Crack!!!". Aussi, comment ai-je pu que ClassCastException avaient envoyé? Je suis à l'aide du JDK 1.7.0_07 sur Windows 7 x64.

source d'informationauteur starteleport