Java反射之類的實(shí)例對(duì)象的三種表示方式總結(jié)
如下所示:
<span style="font-size:14px;">package com.imooc.reflect;
public class ClassDemo1 {
public static void main(String[] args) {
//Foo的實(shí)例對(duì)象如何表示
Foo foo1 = new Foo();//foo1就表示出來(lái)了
//Foo這個(gè)類,也是一個(gè)實(shí)例對(duì)象,Class類的實(shí)例對(duì)象,如何表示呢、
//任何一個(gè)類都是Class的實(shí)例對(duì)象,這個(gè)實(shí)例對(duì)象那個(gè)有三個(gè)表示方式
//第一種表示方式--》實(shí)際在告訴我們?nèi)魏我粋€(gè)類都有一個(gè)隱含的靜態(tài)成員變量class
Class class1 = Foo.class;
//第二種表示方式 已經(jīng)知道該類的對(duì)象通過(guò)getClass方法
Class class2 = foo1.getClass();
/*
* 官網(wǎng)class1 ,class2表示了Foo類的類類型(class type)
* 萬(wàn)事萬(wàn)物 都是對(duì)象
* 類也是對(duì)象,是Class類的實(shí)例對(duì)象
* 這個(gè)對(duì)象我們稱為該類的類類型
*/
//不管class1 or class2都代表了Foo類的類類型,一個(gè)類只可能是Class;類的一個(gè)實(shí)例對(duì)象
System.out.println(class1==class2);//true'
//第三種表達(dá)方式
Class class3 = null;
try {
class3 = Class.forName("com.imooc.reflect.Foo");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
//
System.out.println(class2==class3);//true
//我們完全尅通過(guò)類的類類型創(chuàng)建該類的對(duì)象實(shí)例--》通過(guò)class1 or class2 or class3
//創(chuàng)建Foo類的實(shí)例對(duì)象
try {
//需要有無(wú)參數(shù)的構(gòu)造方法
Foo foo = (Foo) class1.newInstance();//需要強(qiáng)轉(zhuǎn)
foo.print();
} catch (Exception e) {
e.printStackTrace();
}
}
}
//
class Foo{
public void print(){
System.out.println("foo");
}
}
</span>
以上就是小編為大家?guī)?lái)的Java反射之類的實(shí)例對(duì)象的三種表示方式總結(jié)的全部?jī)?nèi)容了,希望對(duì)大家有所幫助,多多支持腳本之家~
- 利用Java反射機(jī)制實(shí)現(xiàn)對(duì)象相同字段的復(fù)制操作
- Java反射通過(guò)Getter方法獲取對(duì)象VO的屬性值過(guò)程解析
- java通過(guò)反射創(chuàng)建對(duì)象并調(diào)用方法
- Java反射獲取class對(duì)象方式解析
- Java 用反射設(shè)置對(duì)象的屬性值實(shí)例詳解
- java基于反射得到對(duì)象屬性值的方法
- Java反射之通過(guò)反射獲取一個(gè)對(duì)象的方法信息(實(shí)例代碼)
- Java通過(guò)反射機(jī)制動(dòng)態(tài)設(shè)置對(duì)象屬性值的方法
- Java利用反射自動(dòng)封裝成實(shí)體對(duì)象的方法
- Java如何基于反射獲取對(duì)象屬性信息
相關(guān)文章
MyBatis動(dòng)態(tài)SQL實(shí)現(xiàn)配置過(guò)程解析
這篇文章主要介紹了MyBatis動(dòng)態(tài)SQL實(shí)現(xiàn)配置過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-03-03
Java利用遞歸實(shí)現(xiàn)樹形結(jié)構(gòu)的工具類
有時(shí)候,我們的數(shù)據(jù)是帶有層級(jí)的,比如常見(jiàn)的省市區(qū)三級(jí)聯(lián)動(dòng),就是一層套著一層。而我們?cè)跀?shù)據(jù)庫(kù)存放數(shù)據(jù)的時(shí)候,往往是列表形式的,這個(gè)時(shí)候可能就需要遞歸處理為樹形結(jié)構(gòu)了。本文就為大家介紹了Java利用遞歸實(shí)現(xiàn)樹形結(jié)構(gòu)的工具類,希望對(duì)大家有所幫助2023-03-03
Java中zip文件壓縮與解壓之ZipInputStream和ZipOutputStream
這篇文章主要給大家介紹了關(guān)于Java中zip文件壓縮與解壓之ZipInputStream和ZipOutputStream的相關(guān)資料,ZipInputStream 和 ZipOutputStream 可以用于處理 ZIP文件格式,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-10-10
淺談Java 三種方式實(shí)現(xiàn)接口校驗(yàn)
這篇文章主要介紹了淺談Java 三種方式實(shí)現(xiàn)接口校驗(yàn),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-10-10
Java面試題沖刺第六天--網(wǎng)絡(luò)編程1
這篇文章主要為大家分享了最有價(jià)值的三道網(wǎng)絡(luò)編程面試題,涵蓋內(nèi)容全面,包括數(shù)據(jù)結(jié)構(gòu)和算法相關(guān)的題目、經(jīng)典面試編程題等,感興趣的小伙伴們可以參考一下2021-07-07
利用IDEA社區(qū)版創(chuàng)建SpringBoot項(xiàng)目的詳細(xì)圖文教程
大家應(yīng)該都知道Idea社區(qū)版本,默認(rèn)是不能創(chuàng)建SpringBoot項(xiàng)目的,下面這篇文章主要給大家介紹了關(guān)于利用IDEA社區(qū)版創(chuàng)建SpringBoot項(xiàng)目的詳細(xì)圖文教程,文中通過(guò)圖文介紹的非常詳細(xì),需要的朋友可以參考下2023-04-04
java?-jar命令及SpringBoot通過(guò)java?-jav啟動(dòng)項(xiàng)目的過(guò)程
本篇文章將為大家講述關(guān)于 SpringBoot 項(xiàng)目工程完成后,是如何通過(guò) java-jar 命令來(lái)啟動(dòng)的,以及介紹 java-jar 命令的詳細(xì)內(nèi)容,對(duì)SpringBoot java?-jav啟動(dòng)過(guò)程感興趣的朋友跟隨小編一起看看吧2023-05-05
java多線程編程之使用Synchronized關(guān)鍵字同步類方法
JAVA中要想解決“臟數(shù)據(jù)”的問(wèn)題,最簡(jiǎn)單的方法就是使用synchronized關(guān)鍵字來(lái)使run方法同步,看下面的代碼,只要在void和public之間加上synchronized關(guān)鍵字2014-01-01
通過(guò)簡(jiǎn)單步驟實(shí)現(xiàn)SpringMVC文件上傳
這篇文章主要介紹了通過(guò)簡(jiǎn)單步驟實(shí)現(xiàn)SpringMVC文件上傳,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-11-11

