Java基础之编译异常和运行异常

时间:2021-09-25 10:54:27

 

Java基础之编译异常和运行异常

一、getProperties()方法

1.System类提供一个getProperties()方法用来获取当前系统的全部属性,它会返回一个Properties对象,也封装了系统的全部属性,这些属性的存在是以键值对的形式。

2.getProperties()方法使用例子:

public class p55 { 

public static void main(String[] args) { 

        // TODO Auto-generated method stub 

        //获取当前系统的属性 

        Properties p=System.getProperties(); 

        System.out.println("Java的运行环境版本:"+p.getProperty("java.version")); 

        System.out.println("Java安装目录"+System.getProperty("java.home")); 

        System.out.println("操作系统的构架:"+p.getProperty("os.arch")); 

        System.out.println("用户的国家:"+p.getProperty("user.country")); 

        System.out.println("用户的账户名称:"+p.getProperty("user.name")); 

        System.out.println("用户的当前工作目录:"+p.getProperty("user.dir")); 

        System.out.println("Java类路径:"+p.getProperty("java.class.path")); 

运行的结果是:

Java基础之编译异常和运行异常

二、public static arraycopy(Object src, int srcPos, Object dest, int destPos, int length) 方法

1.public static arraycopy(Object src, int srcPos, Object dest, int destPos, int length) 方法是表示一个数组的元素复制到另一个数组,它的参数作用如下所示:

Object src:表示源数组;

int srcPos:表示源数组复制的起始位置;

Object dest:表示目的数组;

int destPos:表示复制目标数组的起始位置;

int length:表示复制的长度或元素的个数;

2.实现数组元素复制到另一个数组例子

public class p56 { 

public static void main(String[] args) { 

        // TODO Auto-generated method stub 

        //表示源数组 

        String current[]={"Java","C语言","MYSQL","Python","PHP"}; 

        //表示目标数组 

        String goal[]={"HTML5","Vue.js","JavaScript","IOS","Java EE"}; 

        //复制数组的元素 

        System.arraycopy(current, 1, goal, 2, 3); 

        //遍历数组中的元素 

        for(String s:goal){ 

            System.out.println(s); 

        } 

运行的结果为:

Java基础之编译异常和运行异常

三、编译异常

1.在我们程序开发当中,经常会在程序编译时产生一些异常也就是bug,我们需要处理这些异常,这个就是编译异常。

2.编译异常特点是java程序在编译器进行检查,如果程序出现了异常就一定要处理这些异常,否则程序不能编译。

3.处理编译异常有两种处理方式:

①使用try...catch语句进行对异常进行捕获的方式;

②使用throws关键字声明抛出的异常,调用时并对它进行处理;

四、运行异常

1.在java程序运行时产生的异常,这种异常它不编写异常处理,但它还可以进行编译,这个就是运行异常。

2.运行异常特点是java编译器不会进行检查,在程序出现这样的异常,没有使用try...catch语句或throws关键字声明抛出,该程序也可以编译。运行异常主要是程序中的逻辑不对,程序在运行没办法恢复这个异常。

3.数组的下标访问数组元素,当超过数组的下标值就会引起运行异常,我们通过下面的例子看一下:

public class p66 { 

public static void main(String[] args) { 

        // TODO Auto-generated method stub 

        int arr[]=new int[3]; 

        System.out.println(arr[4]); 

运行的结果是:

Java基础之编译异常和运行异常

从上面的代码中,数组的长度为3,因为下标是从0开始,所以最大下标是2,当访问arr[4]数组就会出现运行的异常数组下标越界了。

五、总结

本文主要介绍了getProperties()方法、public static arraycopy(Object src, int srcPos, Object dest, int destPos, int length) 方法、编译异常和运行异常。

getProperties()方法是获取当前系统的全部属性,它会返回一个Properties对象,也封装了系统的全部属性,这些属性的存在是以键值对的形式。

public static arraycopy(Object src, int srcPos, Object dest, int destPos, int length) 方法是表示一个数组的元素复制到另一个数组,理解里面参数作用。了解编译异常是在程序编译产生的一些bug,我们需要处理这些异常,这就是编译异常。

在java程序运行时产生的异常,这种异常它不编写异常处理,但它还可以进行编译,这个就是运行异常。希望大家通过本文的学习,对你有所帮助!

我是Java进阶者,希望大家通过本文的学习,对你有所帮助!

原文地址:https://mp.weixin.qq.com/s/g1qNLHlJ2hf9o4Y4oyMkTw