title: What is an Unchecked Call in Java?
body: <pre><code>public class Main&lt;T&gt; {
       T obj;
       public Main(T input) {
           this.obj = input;
       }
       void set(T input) {
           this.obj = input;
       }
       void print() {
           System.out.println(this.obj);
       }
      public static void main(String[] args) {
          Main&lt;Integer&gt; tester = new Main&lt;&gt;(2);
          Main test = tester;
          test.print();
          test.set(3);
          test.print();
      }
  }
  </code></pre>
  
  <p>In the code above test.set(3) gives me a warning "Unchecked call to 'set(T)' as a member of raw type 'Main'". <strong>What is an unchecked call and why do I get it</strong>, even though the set method works and after the print statement is executed, 3 is printed.</p>