欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java內(nèi)部類的全限定名規(guī)律代碼示例

 更新時(shí)間:2017年12月21日 08:44:20   作者:三向板磚  
這篇文章主要介紹了Java內(nèi)部類的全限定名規(guī)律代碼示例,具有一定借鑒價(jià)值,需要的朋友可以參考下。

簡(jiǎn)述:

由于最近遇到不少需要反射的類,而其中不乏內(nèi)部類,在此總結(jié)一下內(nèi)部類的全限定名的規(guī)律。

成員內(nèi)部類

測(cè)試結(jié)果表明,無(wú)論成員內(nèi)部類是否為靜態(tài),其全限定名都使用如下命名方法:

包名.外部類名$內(nèi)部類名

測(cè)試代碼:

package com.test;
public class InnerClassTest {
	static class StaticInner{
	}
	class Inner{
	}
	public static void main(String[] args) {
		StaticInner si = new StaticInner();
		Inner in = new InnerClassTest().new Inner();
		System.out.println(si.getClass());
		System.out.println(in.getClass());
	}
}

打印結(jié)果:

classcom.test.InnerClassTest$StaticInner
classcom.test.InnerClassTest$Inner

匿名內(nèi)部類

匿名內(nèi)部類的全限定名滿足如下規(guī)律:

包名.外部類名$由1開(kāi)始的正整數(shù)-按照類裝載順序依次排列

測(cè)試代碼

package com.test;
public class InnerClassTest {
	static Object staticAnClass = new Object(){
	}
	;
	static Object staticBlockAnClass;
	static {
		staticBlockAnClass = new Object(){
		}
		;
	}
	Object anClass = new Object(){
	}
	;
	Object blockAnClass;
	{
		blockAnClass = new Object(){
		}
		;
	}
	public static void main(String[] args) {
		InnerClassTest functionClass = new InnerClassTest(){
		}
		;
		System.out.println(staticAnClass.getClass());
		System.out.println(staticBlockAnClass.getClass());
		InnerClassTest test = new InnerClassTest();
		System.out.println(test.anClass.getClass());
		System.out.println(test.blockAnClass.getClass());
		System.out.println(functionClass.getClass());
	}
}

打印結(jié)果:
class com.test.InnerClassTest$1
class com.test.InnerClassTest$2
class com.test.InnerClassTest$3
class com.test.InnerClassTest$4
class com.test.InnerClassTest$5

局部?jī)?nèi)部類

局部?jī)?nèi)部類全限定名使用如下命名方式:

包名.外部類名$由1開(kāi)始的正整數(shù)后跟局部類名-其中數(shù)字部分是局部類在外部類上下文出現(xiàn)的先后順序

測(cè)試代碼

package com.test;
public class InnerClassTest {
	public static void main(String[] args) {
		functionA();
		functionB();
	}
	public static void functionA() {
		class Inner {
		}
		;
		System.out.println(new Inner().getClass());
	}
	public static void functionB() {
		class Inner {
		}
		;
		System.out.println(new Inner().getClass());
	}
}

上例打印結(jié)果: 

classcom.test.InnerClassTest$1Inner 
classcom.test.InnerClassTest$2Inner 
在測(cè)試代碼的基礎(chǔ)上在交換main中functionA、B位置后的結(jié)果: 
classcom.test.InnerClassTest$2Inner 
classcom.test.InnerClassTest$1Inner 
在測(cè)試代碼基礎(chǔ)上交換functionA、B聲明位置的結(jié)果: 
classcom.test.InnerClassTest$2Inner 
classcom.test.InnerClassTest$1Inner

總結(jié)

以上就是本文關(guān)于Java內(nèi)部類的全限定名規(guī)律代碼示例的全部?jī)?nèi)容,希望對(duì)大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站其他相關(guān)專題,如有不足之處,歡迎留言指出。感謝朋友們對(duì)本站的支持!

相關(guān)文章

  • Spring容器中添加bean的5種方式

    Spring容器中添加bean的5種方式

    我們知道平時(shí)在開(kāi)發(fā)中使用Spring的時(shí)候,都是將對(duì)象交由Spring去管理,那么將一個(gè)對(duì)象加入到Spring容器中,有哪些方式呢,感興趣的可以了解一下
    2021-07-07
  • Java如何向主函數(shù)main中傳入?yún)?shù)

    Java如何向主函數(shù)main中傳入?yún)?shù)

    這篇文章主要介紹了Java如何向主函數(shù)main中傳入?yún)?shù),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-02-02
  • Java簡(jiǎn)單實(shí)現(xiàn)約瑟夫環(huán)算法示例

    Java簡(jiǎn)單實(shí)現(xiàn)約瑟夫環(huán)算法示例

    這篇文章主要介紹了Java簡(jiǎn)單實(shí)現(xiàn)約瑟夫環(huán)算法,簡(jiǎn)單描述了約瑟夫環(huán)問(wèn)題,并結(jié)合實(shí)例形式分析了Java實(shí)現(xiàn)約瑟夫環(huán)的具體操作技巧,需要的朋友可以參考下
    2017-09-09
  • spring mvc4中相關(guān)注解的詳細(xì)講解教程

    spring mvc4中相關(guān)注解的詳細(xì)講解教程

    這篇文章主要給大家介紹了關(guān)于spring mvc4中相關(guān)注解的相關(guān)資料,其中詳細(xì)介紹了關(guān)于@Controller、@RequestMapping、@RathVariable、@RequestParam及@RequestBody等等注解的相關(guān)內(nèi)容,需要的朋友可以參考借鑒,下面來(lái)一起看看吧。
    2017-06-06
  • Java util.List如何實(shí)現(xiàn)列表分段處理

    Java util.List如何實(shí)現(xiàn)列表分段處理

    這篇文章主要介紹了Java util.List如何實(shí)現(xiàn)列表分段處理,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-09-09
  • 18個(gè)Java8日期處理的實(shí)踐(太有用了)

    18個(gè)Java8日期處理的實(shí)踐(太有用了)

    這篇文章主要介紹了18個(gè)Java8日期處理的實(shí)踐(太有用了),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-01-01
  • Post請(qǐng)求參數(shù)是數(shù)組或者List時(shí)的請(qǐng)求處理方式

    Post請(qǐng)求參數(shù)是數(shù)組或者List時(shí)的請(qǐng)求處理方式

    這篇文章主要介紹了Post請(qǐng)求參數(shù)是數(shù)組或者List時(shí)的請(qǐng)求處理方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-05-05
  • RocketMQ整合SpringBoot實(shí)現(xiàn)生產(chǎn)級(jí)二次封裝

    RocketMQ整合SpringBoot實(shí)現(xiàn)生產(chǎn)級(jí)二次封裝

    本文主要介紹了RocketMQ整合SpringBoot實(shí)現(xiàn)生產(chǎn)級(jí)二次封裝,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-06-06
  • javaweb如何使用華為云短信通知公共類調(diào)用

    javaweb如何使用華為云短信通知公共類調(diào)用

    這篇文章主要介紹了javaweb使用華為云短信通知公共類調(diào)用的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-06-06
  • Spring?BeanDefinition收集過(guò)程示例詳解

    Spring?BeanDefinition收集過(guò)程示例詳解

    這篇文章主要為大家介紹了Spring?BeanDefinition收集過(guò)程示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-08-08

最新評(píng)論