title: What does the following smali terminology mean?
body: <p>I've been digging into some smali coded files lately and theres terminology that I just don't understand and is not explained ANYWHERE (not even in the dalvik opcodes site). Lets get started with the questions </p>
  
  <pre><code>1. What is -&gt;?
  2. What is (somerandomletter):I, F, J, S, C, B etc. (any element encoding letter)? 
     example of both in one: Lcom/google/android/gms/games/achievement/AchievementEntity;-&gt;j:I
  3. What is this god damned v1, v2, v3, or v4 I see everywhere?
     ex. const-string/jumbo v1, "Type"
  4. What is invoke-static and invoke-interface?
     ex. invoke-interface {p0},      Lcom/google/android/gms/games/achievement/Achievement;-&gt;n()J
     ex. invoke-static {v2}, Ljava/lang/Integer;-&gt;valueOf(I)Ljava/lang/Integer;
  5. What are interfaces and public or private fields?
  </code></pre>