package yichang;
/*
* https://www.cnblogs.com/hysum/p/7112011.html
* */
public class Demo1 {
public static void main(String[] args) {
Demo1 t1 = new Demo1();
System.out.println(t1.test1());
}
public int test1() {
int divider = 10;
int result = 100;
try {
while (divider > -1) {
divider--;
result = result + 100/divider;
}
return result;
}catch(Exception e) {
e.printStackTrace();
System.out.println("异常抛出!");
return -1;
}
}
}
package yichang;
public class Demo2 {
public int test2() {
int divider = 10;
int result = 100;
try {
while(divider > -1) {
divider--;
result = result + 100/divider;
}
return result;
}catch(Exception e) {
e.printStackTrace();
System.out.println("异常抛出!");
return result = 999;
}finally {
System.out.println("finally");
System.out.println("result = "+result);
}
}
public static void main(String[] args) {
Demo2 t2 = new Demo2();
t2.test2();
System.out.println("end.");
}
}
package yichang;
public class Demo3 {
public static void main(String[] args) {
String s = "abc";
if (s.equals("abc")) {
throw new NumberFormatException();
}else {
System.out.println(s);
}
System.out.println("main end.");
}
}
package yichang;
public class Demo4 {
public static void function() throws NumberFormatException {
String s = "abc";
System.out.println(Double.parseDouble(s));
}
public static void main(String[] args) {
try {
function();
}catch(NumberFormatException e) {
System.out.println("非数据类型不能转换");
}
System.out.println("main end.");
}
}
package yichang;
/*
* 自定义异常抛出信息
*
* */
public class Demo5 extends Exception {
private String errorCode;
public Demo5() {
System.out.println("demo5()...");
}
public Demo5(String message) {
super(message);
System.out.println("demo5(String)...");
}
public String getErrorCode() {
return errorCode;
}
public void setErrorCode(String errorCode) {
this.errorCode = errorCode;
}
public static void main(String[] args) {
String[] sexs = {"male", "female", "neutral"};
for(int i=0; i<sexs.length; i++) {
if ("neutral".equals(sexs[i])) {
try {
throw new Demo5("不存在中性人");
}catch(Demo5 e) {
e.printStackTrace();
}
}else {
System.out.println(sexs[i]);
}
}
}
}
package yichang;
public class Demo6 {
public void test1() throws RuntimeException {
String[] sexs = {"male", "female", "neutral"};
for (int i=0; i<sexs.length; i++) {
if ("neutral".equals(sexs[i])) {
try {
throw new Demo5("不存在中性人");
}catch(Demo5 e) {
e.printStackTrace();
RuntimeException rte = new RuntimeException(e);
throw rte;
}
}else {
System.out.println(sexs[i]);
}
}
}
public static void main(String[] args) {
Demo6 m = new Demo6();
try {
m.test1();
}catch(Exception e) {
e.printStackTrace();
e.getCause();
}
}
}