main()方法里的输出语句是一定会执行的。
滦南网站制作公司哪家好,找创新互联建站!从网页设计、网站建设、微信开发、APP开发、成都响应式网站建设公司等网站项目制作,到程序开发,运营维护。创新互联建站公司2013年成立到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选创新互联建站。
捕捉到异常就会执行catch。
FileReader f1=new FileReader("D:\\mytest.txt");报错是因为FileReader类的够着方法是这样声明的public FileReader(File file) throws FileNotFoundException必须捕获异常或者声明抛出异常
求y阶乘的完整的Java程序如下:
import java.math.*;
public class A {
public void jc(int y){
try {
if(y0) throw new Exception();
long product=1;
for(int i=1;i=y;i++){
product=product*i;
}
System.out.println(y+"!="+product);
} catch (Exception e) {
System.out.println("负数不求阶乘!");
}
}
public static void main(String[] args) {
A a=new A();
int x;
x=5-(int)(Math.random()*10); //Math.random()产生0-1之间的随机小数
a.jc(x);
}
}
运行结果:(若不出异常提示,可多次运行本程序)
负数不求阶乘!
内存溢出不是异常,是Error,可以把Error当做不可以捕捉的Exception(ThreadDeath除外),Error是程序无法处理的错误,一般由JVM处理,比如杀死该线程,不要试图捕捉Error。
一旦出现内存溢出错误,整个JVM就崩溃了,因此不存在捕获的可能性。
mport java.util.Scanner;
public class MainTest {
public void InputAdd() {
int num1 = 0;
int num2 = 0;
try {
System.out.println("请分别输入两个数字,回车继续。");
num1 = new Scanner(System.in).nextInt();
num2 = new Scanner(System.in).nextInt();
System.out.println("求和结果:" + (num1 + num2));
} catch (Exception e) {
System.out.println("num1和num2中至少有一个不是数字,无法进行计算");
}
}
public static void main(String[] args) {
MainTest mt = new MainTest();
mt.InputAdd();
}
}
运行结果:
控制台输入一段字符串,前面加个echo,再给你输出来,然后你再往里输东西,如果你输入了quit ,就不让输了。
应该是这样~~
楼主我忘记了以前的163邮箱了,
我写在这吧,你自己复制粘贴过去。
public class TestIntArray {
public static void main(String[] args) {
int arr [] = new int [8];//创建一个长度为8的数组
for(int i = 0;iarr.length;i++){//for循环为数组赋值
arr[i] = i+1;
}
int j = (int)(Math.random()*10); // 取第一个随机数
int k = (int)(Math.random()*10);// 取第二个随机数
try{
System.out.println("第一个数为:"+arr[j]);//打印第一个数
System.out.println("第二个数为:"+arr[k]);//打印第二个数
System.out.println("这两个数的乘积为:"+arr[j]*arr[k]);//打印他们的乘积
}
catch(ArrayIndexOutOfBoundsException e){//处理异常
System.out.println("如果没有看到两个数的成绩,那么说明数组越界了哦");
e.printStackTrace();//显示错误信息
}
}
}
运行结果,eclipse: