Java反射學習(一)

瞭解Java代碼在計算機中經歷的過程

Java代碼在計算機中經歷的過程(大致會經歷着三個過程):

1.Source源碼階段:

源碼階段包含.java文件,.class文件(源代碼階段,代碼都是存儲在硬盤上)
例如:

	public class Person{
		private String name;
		private int age;
		public Person(){};
		其他成員方法。。。等等
	}

這是一個Person.java文件,通過javac命令編譯成Person.class字節碼文件
其中在編譯的過程中,編譯器將會把Java文件拆分成若干個部分,比如:

	一、成員變量一個部分:
	private String name;
	private int age;

	二、構造方法一個部分:
	public Person(){};

	三、等等其他部分。。

2.Class類對象階段

從第一階段進階導第二階段,Java虛擬機會通過類加載器(ClassLoader)將.class字節碼文件加載進計算機的內存中,此時交由Java的中Class類對象進行管理(這裏的Class就是一個對象),他將用來描述所有字節碼文件的共同的一些特徵和行爲。
Class類對象中由三部分比較重要的東西(當然還有其他的很多東西)

	第一部分:包含所有的成員變量
		成員變量將會背封裝成Filed對象
		Filed[] fileds
	第二部分:構造方法
		構造方法將會被封裝成Constructor對象
		Constructor[] Constructors
	第三部分:成員方法
		成員方法將會被封裝爲Method對象
		Method[] Methods

3.Runtime運行時階段

在運行時階段中,直接可以通過第二階段中的Class類對象來創建對象(這裏可以創建Person對象),其實運行時階段都是通過Class類對象來創建對象的,只是我們都沒有去深究過

總結:
Java反射機制:將類的各個組成部分封裝成其他對象。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章