如果您对php异常处理技术,顶级异常处理器php自定义异常c#异常处理java异常处感兴趣,那么本文将是一篇不错的选择,我们将为您详在本文中,您将会了解到关于php异常处理技术,顶级异常处理器php自
如果您对php异常处理技术,顶级异常处理器 php 自定义异常 c# 异常处理 java 异常处感兴趣,那么本文将是一篇不错的选择,我们将为您详在本文中,您将会了解到关于php异常处理技术,顶级异常处理器 php 自定义异常 c# 异常处理 java 异常处的详细内容,并且为您提供关于-1-6 java 异常简单介绍 java异常 异常体系 Throwable 分类 throws和throw 异常处理 自定义异常、C# 自定义异常、Java - 自定义异常(尚学堂第六章异常机制作业计算平均数)、Java - 自定义异常(尚学堂第六章异常机制作业判断三角形)的有价值信息。
本文目录一览:- php异常处理技术,顶级异常处理器 php 自定义异常 c# 异常处理 java 异常处
- -1-6 java 异常简单介绍 java异常 异常体系 Throwable 分类 throws和throw 异常处理 自定义异常
- C# 自定义异常
- Java - 自定义异常(尚学堂第六章异常机制作业计算平均数)
- Java - 自定义异常(尚学堂第六章异常机制作业判断三角形)
php异常处理技术,顶级异常处理器 php 自定义异常 c# 异常处理 java 异常处
php对异常的处理与java一样,用到的是try{}catch(){}
定义顶级异常处理器用到的函数是
set_exception_handler("My_exception");
这里的My_expection是开发者自定义的异常处理函数,既顶级异常处理器,只有当程序中没有函数来处理异常才有顶级异常处理器来处理异常,如果没有定义顶级异常处理器,则由系统默认的异常处理器来处理异常
举例说明:
立即学习“PHP免费学习笔记(深入)”;
<meta http-equiv="content-type" c>
<span>php </span><span>set_exception_handler</span>("My_expection"<span>); </span><span>function</span><span> My_expection(){ </span><span>echo</span> "这里是顶级异常处理器"<span>; } </span><span>try</span><span>{ nohello(</span>"hello"<span>); }</span><span>catch</span>(<span>Exception</span><span>$e</span><span>){ </span><span>throw</span><span>$e</span><span>; } </span><span>function</span> nohello(<span>$nohello</span><span>){ </span><span>if</span>(<span>$nohello</span> == "hello"<span>){ </span><span>throw</span><span>new</span><span>Exception</span>("不能输入hello"<span>); }</span><span>else</span><span>{ </span><span>echo</span> "输入成功"<span>; } } </span>?>
转载自:http://blog.sina.com.cn/s/blog_641d5693010121cr.html
以上就介绍了php异常处理技术,顶级异常处理器,包括了异常处理,php方面的内容,希望对PHP教程有兴趣的朋友有所帮助。
-1-6 java 异常简单介绍 java异常 异常体系 Throwable 分类 throws和throw 异常处理 自定义异常
getMessage()•获取异常信息,返回字符串。toString()•获取异常类名和异常信息,返回字符串。printStackTrace()•获取异常类名和异常信息,以及异常出现在程序中的位置。返回值void。printStackTrace(PrintStream s)•通常用该方法将异常内容保存在日志文件中,以便查阅。
try
{
需要检测的代码;
}
catch
(异常类 变量){
异常处理代码;
}
finally
{
一定会执行的代码;
}
Finally代码块控制的语句体一定会执行
只有一种情况不会被执行。就是在之前执行了System.exit(0)。
主要用于释放资源
例:
Class DemoException extends Exception
{
DemoException(String message)
{
super(message);
}
}
C# 自定义异常
1、自定义异常类
1.1 为什么要自定义异常类
(1)没有具体系统异常相对应
(2)不希望在Catch块中处理
(3)希望能明确标志错误种类的异常
1.2 自定义异常类定义步骤
继承自System.ApplicationException类,并使用Exception作为后缀名。
1.3 自定义异常的准则
自定义异常:
class MyException : ApplicationException { public string error; private Exception innerException; public MyException() { } public MyException(string msg) :base(msg) { this.error = msg; } public MyException(string msg,Exception innerException):base(msg,innerException) { this.innerException = innerException; error = msg; } public string GetError() { return error; } }
测试:
class Program { static void Main(string[] args) { try { // 无参构造对象 //throw new MyException(); //throw new MyException("我的错误哦"); throw new MyException("我的错误",new Exception("这是Exception的错误")); } catch (MyException e) { //Console.WriteLine(e.GetError()); Console.WriteLine(e.InnerException.Message); } //*/ /* //因为Exception是MyException父类,所以如果这里是Exception也能捕获到MyException的错误 //前提是MyException必须初始化父类Exception构造函数,即 public MyException(string msg) :base(msg) catch (Exception e) { Console.WriteLine(e.Message); } //*/ Console.ReadKey(); } }
Java - 自定义异常(尚学堂第六章异常机制作业计算平均数)
编写一个计算N个学生分数平均分的程序。程序应该提示用户输入N的值,如何必须输入所有N个学生分数。如果用户输入的分数是一个负数,则应该抛出一个异常并捕获,提示“分数必须是正数或者0”。并提示用户再次输入该分数。
import java.util.Scanner;
public class TestInputScore {
public static void main(String[] args) {
@SuppressWarnings("resource")
Scanner input = new Scanner(System.in);
System.out.println("要计算几个学生分数的平均数?");
float n = input.nextFloat();
System.out.println("请输入:" + (int)n + "个学生分数");
float sum = 0;
float tmp;
for(int i=0; i<n;) {
tmp = input.nextFloat();
if(tmp<0) {
try {
throw new InputScoreException("分数必须是正数或者0");
}catch(Exception e) {
e.printStackTrace();
System.out.println();
System.out.println("请重新输入分数");
continue;
}
}else {
sum += tmp;
i++;
}
}
System.out.print("学生分数平均分为:" + sum/n);
}
}
@SuppressWarnings("serial")
class InputScoreException extends Exception{
public InputScoreException() {
super();
// TODO Auto-generated constructor stub
}
public InputScoreException(String message) {
super(message);
// TODO Auto-generated constructor stub
}
}
Java - 自定义异常(尚学堂第六章异常机制作业判断三角形)
写一个方法 void isTriangle (int a,int b,int c),判断三个参数是否能构成一个三角形, 如果不能则抛出异常 IllegalArgumentException,显示异常信息 “a,b,c 不能构成三角形”,如果可以构成则显示三角形三个边长,在主方法中得到命令行输入的三个整数, 调用此方法,并捕获异常。
import java.util.Scanner;
public class TestTriangle {
public static void main(String[] args) {
System.out.print("请输入a, b, c:");
Scanner input = new Scanner(System.in);
int a = input.nextInt();
int b = input.nextInt();
int c = input.nextInt();
isTriangle(a, b, c);
}
static void isTriangle(int a, int b, int c) {
if(a+b<c||a+c<b||b+c<a) {
try {
throw new IllegalAgeException("a,b,c不能构成三角形");
}catch(Exception e) {
e.printStackTrace();
}
}else {
System.out.println("a, b, c构成三角形");
}
}
}
class IllegalArgumentException extends Exception{
public IllegalArgumentException() {
super();
// TODO Auto-generated constructor stub
}
public IllegalArgumentException(String message) {
super(message);
// TODO Auto-generated constructor stub
}
}
今天关于php异常处理技术,顶级异常处理器 php 自定义异常 c# 异常处理 java 异常处的介绍到此结束,谢谢您的阅读,有关-1-6 java 异常简单介绍 java异常 异常体系 Throwable 分类 throws和throw 异常处理 自定义异常、C# 自定义异常、Java - 自定义异常(尚学堂第六章异常机制作业计算平均数)、Java - 自定义异常(尚学堂第六章异常机制作业判断三角形)等更多相关知识的信息可以在本站进行查询。
本文标签: