如何快速更新自己的技术积累?
- 在现有的项目里,深挖技术,比如用到netty可以把相关底层代码和要点都看起来。
- 如果不知道目前的努力方向,就看自己的领导或公司里技术强的人在学什么。
- 知道努力方向后不知道该怎么学,就到处去找相关资料然后练习。
- 学习以后不知道有没有学成,则可以通过面试去检验。
我个人觉得面试也像是一场全新的征程,失败和胜利都是平常之事。所以,劝各位不要因为面试失败而灰心、丧失斗志。也不要因为面试通过而沾沾自喜,等待你的将是更美好的未来,继续加油!
以上面试专题的答小编案整理成面试文档了,文档里有答案详解,以及其他一些大厂面试题目
📌 Java异常概述
○ 异常的概念:
• 程序在运行过程中出现的不正常情况;
例如用户输入数据有问题,读写文件时文件被强制删除了,网络传输过程中突然断网…
• 出现异常后,会导致jvm(虚拟机)停止运行,后续程序无法执行.
○ 注意:
• 异常指的并不是语法错误. (语法错误,编译不通过,不会产生字节码文件,根本不能运行)
○ 异常的抛出机制 :
java中把不同的异常用不同的类表示, 一旦发生某种异常, 就创建该异常类型的对象, 并且抛出;
然后程序员可以捕获到这个异常对象, 并处理; 如果没有捕获这个异常对象, 那么这个异常将会
导致程序终止。
○ java中默认的异常处理机制:
- 将出现的异常,按不同的类型分类,为每种异常封装了一个类来进行标识.
- 当出现某种类型的异常情况时,会抛出此类的对象,然后终止虚拟机的运行.
○ 异常信息:
• 异常的类型 (在哪种情况下出现,结合API定位) • 异常原因 • 异常位置
📌Java异常体系结构
○ java.lang.Throwable : 异常体系的超类
○****Error 错误:
- 是虚拟机和Java代码无法解决的问题,例如虚拟机内部异常,内存不够用了.
- 堆溢出: OutOfMemoryError
- 栈溢出: StackOverflowError
○****Exception 异常:
- 这类异常时可以通过异常处理机制进行处理的一般性问题.
📌常见的异常
ArithmeticException 算术异常
ArrayIndexOutOfBoundsException 数组索引越界
StringIndexOutOfBoundsException 字符串索引越界
ClassCastException 类型转换异常
NumberFormatException 数字格式化异常
NullPointerException 空指针异常
○ 代码演示:
public static void main(String[] args) {
/*
int a = 10;
int b =0 ;
System.out.println(a/b);
System.out.println("*****");
*/ //ArithmeticException 算术异常
/*
int[] c=new int[2];
c[3] = 0;
*/ //ArrayIndexOutOfBoundsException 数组索引越界
/*
String s = "abc";
s.charAt(4);
*/ //StringIndexOutOfBoundsException 字符串索引越界
/*
Object o = new Integer(10);
String so = (String) o;
*/ //ClassCastException 类型转换异常
/*
Integer.parseInt("abc");
*/ //NumberFormatException 数字格式化异常
/*
String ss = null;
ss.length();
*/ //NullPointerException 使用null中的方法称为空指针异常
}
📌异常处理
⦁ Java中使用异常处理机制为程序提供了错误处理的能力
⦁ 在编码时,就针对可能出现问题的代码,预先编写一些处理机制,当程序运行出现异常时执行处理机制,之后继续执行后续的程序。
● Java的异常处理是通过5个关键字来实现的:try、catch、 finally、throw、throws
○try{…}catch(){…}
try{
编写可能出现异常的代码
}catch(异常类型){
处理机制
}
代码演示:
public static void main(String[] args) {
int a =10;
int b = 0;
try{
int c = a/b;
}catch (ArithmeticException aindex){
aindex.printStackTrace(); //打印异常信息到控制台
/* 一般在开发调试阶段使用,供开发人员定位异常问题 */
System.out.println("算术异常");
}
}
运行结果:
总结
对于面试还是要好好准备的,尤其是有些问题还是很容易挖坑的,例如你为什么离开现在的公司(你当然不应该抱怨现在的公司有哪些不好的地方,更多的应该表明自己想要寻找更好的发展机会,自己的一些现实因素,比如对于我而言是现在应聘的公司离自己的家更近,又或者是自己工作到达了迷茫期,想跳出迷茫期等等)
Java面试精选题、架构实战文档
整理不易,觉得有帮助的朋友可以帮忙点赞分享支持一下小编~
你的支持,我的动力;祝各位前程似锦,offer不断!
赞分享支持一下小编~**
你的支持,我的动力;祝各位前程似锦,offer不断!