如果我有一个Stack类
class Stack<E> {}
Run Code Online (Sandbox Code Playgroud)
现在,如果我这样做:
1) Stack<Integer> s = new Stack()
2) Stack s = new Stack<Integer>()
3) Stack s = new Stack()
任何人都能解释一下这些互动(通用< - > raw)会导致什么?
主要是我的疑点是第1点.事实上,如果我这样做,那么它是不安全的,因为该堆栈可以存储除Integer之外的其他类型.是的,但是如果我有一个push方法并且尝试存储除Integer以外的值,那么编译器会阻止我...所以当我有不安全的操作时?