獲取位元組碼檔案的三種方式
在本文中,以Person類為例,將分別演示獲取該類位元組碼檔案的三種方式,其具體思想及程式碼如下所示:
public class Person {
private int age;
private String name;
public Person() {
System.out.println("person run");
}
public Person(String name, int age) {
this.age = age;
this.name = name;
System.out .println("Person param run..." + this.name + ":" + this.age);
}
public void showInfo() {
System.out.println(this.name + "......" + this.age);
}
}
public class GetClassFile {
public static void main(String[] args) throws ClassNotFoundException {
getClassObject_3();
}
/**
* 通過給定的類的字串名稱就可以獲取該類的位元組碼檔案,更利於擴充套件
* 可以用Class類中的"forName()"方法來完成
*/
public static void getClassObject_3() throws ClassNotFoundException {
// 包名一定要寫全,否則會報"java.lang.ClassNotFoundException"異常
String className = "src.Person";
Class clazz = Class.forName(className);
System.out.println(clazz);
}
/**
* 任何資料型別都具備一個靜態屬性
* 通過".class"來獲取對應的Class物件
* 擴充套件性較差
*/
public static void getClassObject_2() {
Class clazz = Person.class;
Class clazz1 = Person.class;
System.out.println(clazz == clazz1);
}
/**
* 運用Object類中的getClass方法
* 用這個方法時,必須明確具體的類,並建立物件
* 比較麻煩
*/
public static void getClassObject_1() {
Person p = new Person();
Class clazz = p.getClass();
Person p1 = new Person();
Class clazz1 = p1.getClass();
System.out.println(clazz == clazz1);
}
}
相關推薦
獲取位元組碼檔案的三種方式
在本文中,以Person類為例,將分別演示獲取該類位元組碼檔案的三種方式,其具體思想及程式碼如下所示: public class Person { private int age; p
生成二維碼的三種方式
gb2312 pub barcode stub string dbi mem [] eth 一:二維碼的概念 二維條碼(2-dimemsional bar code)是用某種特定的幾何圖形按一定規律在平面(二維方向上)分布的黑白相間的圖形記錄數據符號信息的圖形 二: 二維碼
1在html中添加js代碼的三種方式
abc cti 浮點 fine 時間 4.0 完成 span 作用域 1.第一種方式:在時間句柄後太假js代碼; 例如瀏覽器彈出對話框; 1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//
3、獲取Class物件的三種方式
3、獲取Class物件的三種方式 要想對位元組碼檔案進行解刨,必須要有位元組碼檔案物件 Object類中的getClass方法 通過物件靜態屬性 .class來獲取對應的Class物件 只要通過給定類的字串名稱就可以獲取該類,更為拓展 3.1 方式一:Object類中的getClass
java 反射(一) 獲取Class物件的三種方式
package com.reflect; /** * 三種獲得Class物件的方式 * @author lr * */ public class Demo1 { public static void main(String[] args) throws ClassNotFound
Java反射的定義以及獲取class物件的三種方式
1、什麼是反射技術? java反射機制是在執行狀態中,對於任意一個類,都能夠知道這個類的所有屬性和方法;對於任意一個物件,都能夠呼叫它的任意一個方法和屬性。 應用程式已經執行,無法在其中進行new物件的建立,就無法使用物件。這時可以根據配置檔案的類全名去找對應的位元組碼檔案(class檔案)
Java反射之獲取Class物件的三種方式
package cn.itcast.reflect.demo; import cn.itcast.bean.Person; /* * JAVA反射機制是在執行狀態中,對於任意一個類 (class檔案),都能夠知道這個類的所有屬性和方法; * 對於任意一個物件,都能夠呼叫它的任意一個方法
java獲取反射機制的三種方式
java 獲取反射常使用的三種方式:1.通過new物件實現反射機制2.通過路徑實現反射機制3.通過類名實現反射機制例子:建立一個學生類:public class Student { private int id; String name; protected boole
C#獲取網頁內容的三種方式
本文轉載自http://www.cnblogs.com/ceachy/articles/CSharp_Retrive_Page_Document.html,Luke Zhang的部落格。 搜尋網路,發現C#通常有三種方法獲取網頁內容,使用WebClient、WebB
java 反射之獲取class物件的三種方式
獲取Class檔案物件有3種方法: 1.Object類的getClass()方法 2.資料型別中的靜態變數 類名.Class 3.Class類中的靜態方法 pub
(六)、獲取Keystone token的三種方式
讓我們粗略看一下,三種從Keystone獲得token的方式。在嘗試這三種方式之前,你得確保已經裝好Keystone終端。如果還沒有裝好,可以看grizzly安裝版本的Keystone 安裝部分。 Note:這些呼叫都將請求的是Keystone v2版本
QT中讀取XML檔案三種方式 的例項
第一部分:QXmlStreamReader XML(eXtensible Markup Language)是一種通用的文字格式,被廣泛運用於資料交換和資料儲存(雖然近年來 JSON 盛行,大有取代 XML 的趨勢,但是對於一些已有系統和架構,比如 WebService,由於歷史原因,仍舊會繼
JAVA反射(一)獲取Class物件的三種方式及其區別
JAVA有三種方式可以獲得Class物件 1、通過類名.class方式獲得,Class<?> cType = ClassName.class; public class Client {public static void main(String[] args
詳述獲取位元組碼檔案及其內容的方法
1 簡述 Java 的反射機制是指: 在執行狀態中,對任意一個類(class檔案),都能知道這個類的所有屬性和方法;對任意一個物件,都能呼叫這個物件的方法和屬性。 簡單點說,這種動態的獲取資訊和動態的呼叫物件的方法的功能就是 Java 的反射機制。利用
Java中的Class類以及獲取Class物件的三種方式
java.lang.Class 之前Hadoop裡面job.setMapperClass(Map.class)之類的方法用到了 xxx.class的寫法,當時也沒有深究。這兩天又遇到了xxx.getClass()的寫法,稍微看了一下。 java API裡這樣寫道: Class 類的例項表示正在執行的
《黑馬程式設計師》 使用反射獲取位元組碼檔案中的方法
public class ReflectMethod { /** * 方法的反射 * @param args */ public static void main(String[] args) throws Exception { String str
獲取Class物件的三種方式
//綜合最好的方法是第三種方法/**法一:是通過類物件來獲取class的*法二:通過類直接調class*法三:通過Class.forName();*/package hncu.reflect.getClass;import java.lang.reflect.Method;i
Java中獲取類的位元組碼檔案的三種方式
第一種方式:全類名的方式獲取位元組碼檔案 Class class2 = Class.forName("day27.Dog");//通過類名的全路徑獲取位元組碼檔案 第二種方式:通過 類名.class
獲取Class位元組碼物件的三種方式
每個類被載入之後,系統就會為該類生成一個對應的位元組碼物件,通過該位元組碼物件就可以訪問到JVM中的對應的類。在Java中獲得Class物件通常有三種方式。 方式一,使用類的class屬性: Class<java.util.Date> clz1 = java.
獲取位元組碼物件的三種方式
//獲取位元組碼物件三種方式 public static void main(String[] args) throws