一、手動拋出異常1.自定義無效名字異常: (1)編譯時異常,直接繼承Exception (2)運行時異常,直接繼承RuntimeException 舉例子:註意點:throws會向上拋出異常,跑到最上面的話,也就是到了main主方法了,就不要再拋了,使用try...catch....列印出來吧,當然 ...
一、手動拋出異常1.自定義無效名字異常:
(1)編譯時異常,直接繼承Exception
(2)運行時異常,直接繼承RuntimeException
舉例子:註意點:throws會向上拋出異常,跑到最上面的話,也就是到了main主方法了,就不要再拋了,使用try...catch....列印出來吧,當然寫throws好像也沒問題。
package com.bjpowernode.java_learning; public class D64_2_ManualThrowException { public static void main(String[] args) { try { Customer65 c1 = new Customer65(); c1.register("ng"); }catch(IllegalNameException i1) { System.out.println(i1.getMessage()); } } } class IllegalNameException extends Exception{ //編譯時異常 public IllegalNameException() {} public IllegalNameException(String msg) { super(msg); } } class Customer65{ String username = "Jack"; public void register(String username) throws IllegalNameException{ if(username.length()<3) { //創建異常對象 IllegalNameException i1 = new IllegalNameException("用戶名長度不能少於3位"); //手動拋出異常 throw i1; }else { this.username = username; } } }
二、重寫的方法不能比被重寫的方法拋出更為寬泛的異常
例子:
class A{ public void m1(){} } classs B extends A{ public void m1() throws Exception{} //子類永遠無法拋出比父類更多的異常 }
釋義:這樣會編譯錯誤,子類的出現了異常,而父類是沒有拋出異常的
三、數組
1.數組一種引用數據類型
2.數組是一種簡單的數據類型,線性的結構
3.數組是一個容器,可以用來存儲其他元素,數組是可以存儲任意數據類型的元素。
4.數組分為:一維數組、二維數組、三維數組、多維數組。。。
5.數組中存儲的元素類型是統一的。
6.數組長度不可以改變,數組一旦創建長度是不可以變得,固定的
7.數組會使用數組的首元素地址作為引用指向的地址。
8.數組的每一個元素都是有下標的,有索引的,從0開始,任何一個數組都一個length屬性用來獲取數組中元素的個數。數組最後一個元素的下標數組元素個數減1.
9.數組的優點:查找效率比較高;缺點也是顯然的:隨意增刪元素效率會很低。
舉個例子:
package com.bjpowernode.java_learning; public class D65_2_ArrayExcerse { public static void main(String[] args) { //聲明一個一維數組,用來存儲int類型 int[] a1 = {100,200,300,400}; //boolean類型數組 boolean a2 = {true,false,true}; //String類型數組 String[] a3 = {"zhansan","lisi","wangwu"}; //Object數組 Object o1 = new Object(); Object o2 = new Object(); Object o3 = new Object(); Object[] objs = {o1,o2,o3}; } }
四、源碼:
D65_1_ManualThrowException.java
D65_2_ArrayExcerse.java
https://github.com/ruigege66/Java/blob/master/D65_1_ManualThrowException.java
https://github.com/ruigege66/Java/blob/master/D65_2_ArrayExcerse.java
2.CSDN:https://blog.csdn.net/weixin_44630050
3.博客園:https://www.cnblogs.com/ruigege0000/
4.歡迎關註微信公眾號:傅里葉變換,個人公眾號,僅用於學習交流,後臺回覆”禮包“,獲取大數據學習資料