為什么需要調(diào)用父類(lèi)含參的構(gòu)造方法?super(message)?
super(message)
在自定義異常時(shí),為什么需要調(diào)用父類(lèi)含參的構(gòu)造方法,默認(rèn)調(diào)用父類(lèi)無(wú)參的構(gòu)造方法不行嗎?
當(dāng)有異常時(shí),傳進(jìn)來(lái)的信息,應(yīng)該是直接給自定義異常類(lèi)的信息,并沒(méi)有給父類(lèi)???
super(message)
在自定義異常時(shí),為什么需要調(diào)用父類(lèi)含參的構(gòu)造方法,默認(rèn)調(diào)用父類(lèi)無(wú)參的構(gòu)造方法不行嗎?
當(dāng)有異常時(shí),傳進(jìn)來(lái)的信息,應(yīng)該是直接給自定義異常類(lèi)的信息,并沒(méi)有給父類(lèi)???
2017-01-01
舉報(bào)
2018-12-23
針對(duì)你的問(wèn)題,你有沒(méi)有發(fā)現(xiàn)e.printStackTrace()打印出來(lái)的異常信息里有你傳進(jìn)去的message,然而你的自定義異常類(lèi)里面也沒(méi)有寫(xiě)printSackTrace()這個(gè)方法。這是因?yàn)槟阕远x的類(lèi)繼承了父類(lèi)Exception 的成員方法和成員變量,雖然你沒(méi)有重寫(xiě)但是實(shí)際存在,所存在一個(gè)我沒(méi)有看父類(lèi)Exception具體內(nèi)容,但是我認(rèn)為肯定存在一個(gè)成員變量并且在printSackTrace()方法中被使用,雖然我沒(méi)有去看Exception類(lèi)的有參構(gòu)造函數(shù)是什么,但我猜測(cè)其內(nèi)容 大概就是 this.m? = m;一類(lèi)的。如果你想知道為什么,去看看繼承跟Exception類(lèi)的內(nèi)容
2017-03-03
哥,你知道了嗎?我也想問(wèn)
2017-01-01
自定義異常時(shí),可能要寫(xiě)一些特定的內(nèi)容,比如特定的提示信息,這些特定的內(nèi)容需要在調(diào)用自定義異常時(shí),可以通過(guò)這個(gè)含參的構(gòu)造方法傳進(jìn)去吧。
就是給自定義異了,沒(méi)有給父類(lèi),自定義會(huì)用繼承父類(lèi)的方法或者自己特有的方法處理吧。