關於java.lang.Class對象的取

來源:互聯網
上載者:User

關於java.lang.Class對象的取得,總結如下 

取得方法

釋義

使用getClass()方法

常量:Class c = "foo".getClass(); 
枚舉:
enum E { A, B } Class c = A.getClass(); 
介面:
Set<String> s = new HashSet<String>(); Class c = s.getClass(); 
數組:
byte[] bytes = new byte[1024]; Class c = bytes.getClass(); 
一般引用:
String str = "foo"; Class c = str.getClass(); 

運用.class文法

基本類型:Class c1 = boolean.class; Class c2 = int.class;

數組:Class c = int[][][].class;

類介面:Class c = java.io.File.class;

運用靜態方法Class.forName()

基本類:Class c = Class.forName ("java.lang.String");

內部類:Class c = Class.forName ("java.lang.HashMap$Entry");

數組:Class c = Class.forName ("[I");

運用基本類型封裝類的.TYPE文法

Class c1 = Boolean.TYPE; 
Class c1 = Byte.TYPE; 
Class c1 = Character.TYPE; 
Class c1 = Short.TYPE; 
Class c1 = Integer.TYPE; 
Class c1 = Long.TYPE; 
Class c1 = Float.TYPE; 
Class c1 = Double.TYPE; 
Class c1 = Void.TYPE; 

使用特殊方法

Class c = java.lang.String.class.getSuperclass(); 
Class<?>[] c = Character.class.getClasses(); 

Class<?>[] c = Character.class.getDeclaredClasses();

Class c = f.getDeclaringClass(); 
Class<c> = o.getClass().getEnclosingClass();

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.