整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

java中checked异常和unchecked异常

java中checked异常和unchecked异常区别

克-to-win:checked和unchecked异常区别:结论就是:1)RuntimeException和他的子类都是unchecked异常。其他的都是checked异常。马克-to-win:2)在编译阶段,编译器会检查每一个方法,看是否方法里面抛出了checked异常。假设抛出了checked异常,那个方法里必须加catch,或者加throws语句(下一节讲解),否则的话编译器会报错。马克-to-win:unchecked异常就没这规矩。
马克- to-win:马克 java社区:防盗版实名手机尾号: 73203。


java中throws子句是怎么用的?工作原理是什么?

throws子句
马克-to-win:当你的方法里抛出了checked异常,如你不catch,代表你当时不处理(不想处理或没条件处理),但你必须得通过"throws 那个异常"告诉系统说,这儿有个问题,我现在不处理,将来一定别人要处理,否则执行到它,马克-to-win:系统会"不优雅"的崩溃。举个例子,工兵张三发现了地雷,假如他处理,完事就完事儿了。但是他发现了地雷,自己却没带齐工具,没法处理,他必须做个标记,说这儿有一个地雷,别的工兵将来一定要处理,否则将来有人踩上去会爆炸。马克-to-win:注意:throws只是标记,并没处理,执行到那,系统还是会崩溃!

马克- to-win:马克 java社区:防盗版实名手机尾号: 73203。

马克-to-win:语法总结就是:当你的方法里抛出了checked异常,如你不catch,必须throws,即告诉编译器,我的调用者会处理。如果你已经是main,则main的调用者jvm会替你收拾残局。否则无法编译通过。

马克-to-win:有的同学可能会问:throws有什么意义?又不真正处理问题。throws的意义,在于和throw配合起来一起工作。有关throw的意义,请参照上面throw部分。

马克-to-win:现在就出现了一个非常深入的问题。(新手可忽略)为什么sun公司的语法设计成:runtime异常不需要throws,而非 runtime异常需要呢?咱们先说非runtime异常为什么需要throws呢?因为程序员多一道工序宣称一下,麻烦一下自己,会给sun公司的人(Java编译器)提供很大便利,少了很多判断等工作。

篇幅有限更多请见扩展链接:http://www.mark-to-win.com/tutorial/java_5_throws.html

.Checked Exception(受检的异常)

马克-to-win:为什么我大胆的把Checked Exception翻译成受检的异常?因为这类异常,编译器检查发现到它后会强令你catch它或throws它(我们之后讲),马克-to-win:而相对于本节前面我们提到的各种比如ArithmeticException,都是unchecked exception(不受检)的异常,unchecked异常都是RuntimeException或者它的子类。马克-to-win:换句话:编译器检查发现到它以后,什么都不管,也什么都不做,直接放行。见下面的例子:

例:1.6.1-本章源码

public class Test {
void m1_mark_to_win() {
throw new RuntimeException("divide by 0");
}
public static void main(String[] args) {
Test t=new Test();
t.m1_mark_to_win();
}
}

输出结果:

Exception in thread "main" java.lang.RuntimeException: divide by 0
at Test.m1_mark_to_win(Test.java:3)
at Test.main(Test.java:7)

马克-to-win:注意上面一个例子ArithmeticException是个unchecked exception, 所以什么问题都没有,编译器不报错。马克-to-win:但是,当我们把ArithmeticException变成 FileNotFoundException这种checked exception时,就会出现问题。马克-to-win:如下面例:1.6.2,根本就编译不过去。必须变成1.6.3才能运行。

篇幅有限更多请见扩展链接:http://www.mark-to-win.com/tutorial/java_5_TranslationCheckedException.html

、表单在网页中的应用:登录、注册常用到表单

2、表单的语法:

<form method="post" action="result.html">

<p> 名字:<input name="name" type="text" > </p>

<p> 密码:<input name="pass" type="password" > </p>

<p>

<input type="submit" name="Button" value="提交"/>

<input type="reset" name="Reset" value="重填“/>

</p>

</form>

3、表单元素说明:

type:指定元素的类型。text、password、checkbox、radio、submit、reset、file、hidden、image 和 button,默认为 text.

name:指定表单元素的名称.

value:元素的初始值。type 为 radio时必须指定一个值.

size:指定表单元素的初始宽度。当 type 为 text 或 password时,表单元素的大小以字符为单位。对于其他类型,宽度以像素为单位.

maxlength:type为text 或 password 时,输入的最大字符数.

checked:type为radio或checkbox时,指定按钮是否是被选中.

4、示例:


<html >

<head>

<title>表单元素</title>

</head>

<body>

<!-- 表单 -->

<form method="POST" action="#">

<!-- 标签 -->

<label for="username">姓名:</label>

<!-- 文本框 value属性是设置默认显示的值-->

<input id="username" value="songzetong" />



<!-- 密码框 -->

<br/><label for="pwd">密码:</label>

<input type="password" id="pwd">

<br/>


<!-- 单选框 -->

<label for="sex">性别:</label>

<input type="radio" name="sex" checked/>男

<input type="radio" name="sex"/>女


<!-- 复选框 -->

<br/>

<label for="hobby">爱好:</label>

<input type="checkbox" name="hobby" id="hobby"/>听音乐

<input type="checkbox" name="hobby"/>旅游

<input type="checkbox" name="hobby"/>游泳


<br/>

<!-- 下拉列表 -->

<label for="month">月份:</label>

<select id="month"/>

<option>1月</option>

<option>2月</option>

<option>3月</option>

</select>

<br/>

<!-- 按钮 -->

<input type="reset" value="重置按钮"/>

<input type="submit" value="提交按钮"/>

<input type="button" value="普通按钮"/>

<br/>

<!-- 图片按钮 -->

<input type="image" src="one.jpg" width="200px" heigth="200px"/>

<br/>

<button type="submit">提交</button>

<button type="reset">重置</button>


<br/>

<label for="profile">

个人简介:

</label>

<!-- 多行文本域 -->

<textarea >本人已同意什么条款</textarea>


<br/>

<br/>

<br/>

<!-- 文件域 -->

<label for="upload">上传头像:</label>

<input type="file"/>

<!-- 邮箱 -->

<br/>

<label for="QQ邮箱">邮箱:</label>

<input type="email"/>



<br/>

<!-- 网址 -->

<label for="ur">网址:</label>

<input type="url"/>


<!-- 数字 -->

<br/>

<label for="shuzi">数字:</label>

<input type="number" name="shuzi" min="0" max="100" step="10"/>


<br/>

<label for="huakuai">滑块:</label>

<input type="range" />

<!-- 搜索框 -->


<br/>

<label for="sousuo">搜索</label>

<input type="search"/>


<!-- 隐藏域 -->

<br/>

<input type="hidden"value="1">

<!-- 只读:只能看不能修改,禁用:不能用 -->

<input value="我是只读的" readonly/>

<input type="button" value="我是禁用的" disabled/>


<!-- palceholder默认提示 -->

<br/>

<input placeholder="默认提示框"/>

<br/>

<!-- 文本框内容提示不能为空,否则不允许用户提交表单(网页上的必填项) -->

<input required="必填项"/>

<button type="submit">提交</button>

<br/>

<!-- 用户输入的内容必须符合正则表达式所指的规则,否则就不能提交表单-->

<input required pattern="^1[3578]\d{9}"/>

<button type="submit">提交</button>


</form>

</body>

</html>


效果图链接:file:///D:/ruanjian/VS/wenjianxiangmu/htmlThree/form.html