Java基础题(2)

7. Java 编程:打印昨天的当前时刻

  1. 使用Calendar对象方法Calendar.getInstance()获得当前时间;
  2. 使用Calendar.DATE获得天数属性;
  3. 使用Calendar.add((int field, int amount))方法获得前天时间;
package com.senchen.test;
import java.util.Calendar;
public class A {
    public static void main(String[] args) {
        Calendar calendar=Calendar.getInstance();       //获得当前时间
        System.out.println(calendar.getTime());             
        
        calendar.add(Calendar.DATE, -1);                //获得当前天数,减1
        System.out.println(calendar.getTime());
    }
}

8. java 和javasciprt 的区别

1)基于对象和面向对象

Java 是一种真正的面向对象的语言,即使是开发简单的程序,必须设计对象;

JavaScript 是种脚本语言,它可以用来制作与网络无关的,与用户交互作用的复杂软件。它是一种基于对象(Object Based)和事件驱动(Event Driver)的编程语言。因而它本身提供了非常丰富的内部对象供设计人员使用;

2)解释和编译

Java 的源代码在执行之前,必须经过编译;

JavaScript 是一种解释性编程语言,其源代码不需经过编译,由浏览器解释执行;

3)强类型变量和类型弱变量:

Java 采用强类型变量检查,即所有变量在编译之前必须作声明;

JavaScript 中变量声明,采用其弱类型。即变量在使用前不需作声明,而是解释器在运行时检查其数据类型;

4)代码格式不一样

9. 什么时候用assert(断言)?

assert(断言)

assertion(断言)在软件开发中是一种常用的调试方式,很多开发语言中都支持这种机制。一般来说,assertion 用于保证程序最基本、关键的正确性。assertion 检查通常在开发和测试时开启。为了提高性能,在软件发布后, assertion 检查通常是关闭的。在实现中,断言是一个包含布尔表达式的语句,在执行这个语句时假定该表达式为true;如果表达式计算为false,那么系统会报告一个Assertionerror。

断言的在MyEclipse中的简单使用

断言在默认情况下是禁用的,要在编译时启用断言,需使用source 1.4 标记:
javac -source 1.4 Test.java
要在运行时启用断言,可使用-enableassertions 或者-ea 标记。
要在运行时选择禁用断言,可使用-da 或者-disableassertions 标记。

测试:

package com.senchen.test;
public class A {
    
    public static void main(String[] args) {
        int a=0;
        assert( a > 0); // throws an Assertionerror if a <= 0
    }

}

默认不开断言,运行不会报错;

打开断言

选择菜单:run --> run Configurations



运行上面测试代码后控制台显示Assertionerror:


10. Java 中的异常处理机制的简单原理和应用

1) 异常

当JAVA 程序违反了JAVA 的语义规则时,JAVA 虚拟机就会将发生的错误表示为一个异常。

2) 违反语义规则2 种情况。

一种是JAVA 类库内置的语义检查。

例如数组下标越界,会引发IndexOutOfBoundsException;访问null 的对象时会引发NullPointerException。

另一种情况就是JAVA 允许程序员扩展这种语义检查

程序员可以创建自己的异常,并自由选择在何时用throw 关键字引发异常。所有的异常都是java.lang.Thowable 的子类。

11. error 和exception 有什么区别?

error

表示系统级的错误和程序不必处理的异常,是恢复不是不可能但很困难的情况下的一种严重问题;比如内存溢出,不可能指望程序能处理这样的情况;

exception

表示需要捕捉或者需要程序进行处理的异常,是一种设计或实现问题;也就是说,它表示如果程序运行正常,从不会发生的情况。

12. try {}里有一个return 语句,那么紧跟在这个try 后的finally {}里的code会不会被执行,什么时候被执行,在return 前还是后?

会执行,在return前执行,finally {}里语句一定会执行,因为return后整个try语句结束,所以在return前执行。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容