Java语言常见的面试题

231 阅读2分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。 1、 请说说JAVA语言的主要特点? 面向对象,简单性,安全性,与平台无关,可移植性,动态性,稳健性。

2、 简述线程的生命周期。

新建->就绪->运行- > 阻塞- > 死亡 3、 抽象类和接口的相同和不同之处是什么?

相同:

  • 1. 都可以被继承
  • 2. 都不能实例化
  • 3. 子类必须实现为实现的方法
  • 4. 都可以包含方法声明 不同:
  • 1. 抽象类是一个不完整的类,需要进一步细化,而接口通常是一组规范
  • 2. 接口可以支持回调,继承不具有
  • 3. 抽象类可以有构造方法,而接口没有
  • 4. 抽象类可以定义普通的成员变量,接口只能定义共有的静态变量
  • 5. 一个子类只能继承一个抽象类,一个实现类可以同时实现多个接口

5、 写出至少两组输入输出流的类名。

  1. OutputStream
  2. InputStream
  3. WriteStream
  4. FileOutputStream
  5. FileIntputStream  
  6. ReadStream 6、 什么是Java API? 它提供的核心包的主要功能是什么? Java API 就是Java所提供的标准类库,把程序设计所需要的方法和接口分类封装成包 核心java包中封装了程序设计所需要的主要应用类 7、 创建线程有哪些方式?
  • 1. 继承Thread类创建线程
  • 2. 通过实现Runnable接口创建线程
  • 3. 通过线程池创建线程
  • 4. 使用Callable和Future来创建线程 8、 用户如何创建自己的异常? 定义一个类,继承Exception或者RuntimeException类 添加一个空参数的构造方法 添加一个带异常信息的构造方法

8种原子类型

  1. 整数类型:byte、short、int和long。
  2. 小数类型:float和double。
  3. 字符类型:char。
  4. 布尔类型:bool。

除此之外的是interface、class和array。

小数类型的常量默认是double类型,声明float类型的常量需要使用F作为后缀。