title: Powershell: GetType() to print all type information, but a lot are missing?
body: <p>I tried to use GetType() to print all type information, but seems much information is missing?
  I have such input in PS 4.0.(See below) </p>
  
  <p>I tried to use "GetType().GetMethods()" to list all methods. But I did not see </p>
  
  <pre><code>"GetMethods"
  </code></pre>
  
  <p>itself in the result list.
  I also used "GetProperties()" to list all properties, but seems there are much more properties like</p>
  
  <pre><code>IsCOMObject
  </code></pre>
  
  <p>not listed in the result. If I use Visual Studio+C# programming, I could see much more properties listed.
  Why powershell is missing them?</p>
  
  <hr>
  
  <p>See my output below:</p>
  
  <pre><code>PS C:\Users\engineer&gt; $PSVersionTable
  Name                           Value                                                                                                                                     
  ----                           -----                                                                                                                                     
  PSVersion                      4.0                                                                                                                                       
  WSManStackVersion              3.0                                                                                                                                       
  SerializationVersion           https://urldefense.proofpoint.com/v2/url?u=http-3A__1.1.0.1&amp;d=BQIGaQ&amp;c=uGuXJ43KPkPWEl2imVFDmZQlhQUET7pVRA2PDIOxgqw&amp;r=mCXkWZTsMJTTBmlJTS1MIA&amp;m=Ygifer7R65h35BWXXpiU4do9wt2Uao4rSLEgO9vuPHk&amp;s=vwVGdMLhksoC-RbOJWgJ4jNhk1F5c7TrApW_pekpb9M&amp;e=                                                                                                                                    
  CLRVersion                     4.0.30319.18444                                                                                                                           
  BuildVersion                   6.3.9600.16406                                                                                                                            
  PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0}                                                                                                                      
  PSRemotingProtocolVersion      2.2                                                                                                                                       
  
  PS C:\Users\engineer&gt; $a=${}
  PS C:\Users\engineer&gt; $a.GetType()
  IsPublic IsSerial Name                                     BaseType                                                                                                      
  -------- -------- ----                                     --------                                                                                                      
  True     True     Hashtable                                System.Object                                                                                                 
  PS C:\Users\engineer&gt; $a.GetType().GetMethods().Name|Sort
  Add
  Clear
  Clone
  Contains
  ContainsKey
  ContainsValue
  CopyTo
  Equals
  get_Count
  get_IsFixedSize
  get_IsReadOnly
  get_IsSynchronized
  get_Item
  get_Keys
  get_SyncRoot
  get_Values
  GetEnumerator
  GetHashCode
  GetObjectData
  GetType
  OnDeserialization
  Remove
  set_Item
  Synchronized
  ToString
  
  PS C:\Users\engineer&gt; $a.GetType().GetProperties().Name|Sort
  Count
  IsFixedSize
  IsReadOnly
  IsSynchronized
  Item
  Keys
  SyncRoot
  Values
  
  PS C:\Users\engineer&gt; $a.GetType().IsCOMObject
  False
  
  PS C:\Users\engineer&gt; 
  </code></pre>