Java连载65-自定义手动抛出异常、子类的异常范围…
2019-12-26 16:01:37来源:博客园 阅读 ()
一、手动抛出异常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.欢迎关注微信公众号:傅里叶变换,个人公众号,仅用于学习交流,后台回复”礼包“,获取大数据学习资料
原文链接:https://www.cnblogs.com/ruigege0000/p/12099829.html
如有疑问请与原作者联系
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:磁力搜索嗅探器装成BT
下一篇:Maven入门
- 国外程序员整理的Java资源大全(全部是干货) 2020-06-12
- 2020年深圳中国平安各部门Java中级面试真题合集(附答案) 2020-06-11
- 2020年java就业前景 2020-06-11
- 04.Java基础语法 2020-06-11
- Java--反射(框架设计的灵魂)案例 2020-06-11
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash