Bootstrap

新手入门,一堆代码在报错,教你如何一招定位bug_java怎么找到bug所在行(3)

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化资料的朋友,可以点击这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

点击上方蓝字关注我们

1. 前言

刚开始学习Java语言的小伙伴, 很可能被各种各样的程序bug搞得焦头烂额, 甚至劝退.健哥将手把手带你们了解Java中的异常体系, 如何识别Bug以及如何解决Bug.

2. Java语言中异常的分类

让我们先来了解下Java中的异常分类, 如下图:

Java中的异常分为Error错误和Exception异常两大类:

  • Error错误: 一般所有编译时期的错误或者系统错误, 都来自于虚拟机自身. 错误无法处理.
  • Exception异常: 它规定程序本身可以处理的异常, 是指程序本身有问题, 异常可以处理.
  • 编译期异常: 一般集成开发工具比如IDEA工具, Eclipse工具等都有语法提示功能. 编译期异常这些工具都有明显的提示, 根据提示修改即可.
  • RuntimeException运行时异常: 运行时异常, 其中一部分比如IO异常等是可以通过try…catch手动抛出, 或者通过throws等Java语法处理掉. 而有些是程序运行中意外发成的, 这些异常也就是bug. 下面主要研究的就是bug如何处理.

3. 解决Bug整体思路

程序出Bug的时候, 我们最直接的感受是, 程序报错了.初学者这个时候就很慌, 哪里出问题了呢? 我该如何下手呢? 然后直接用眼睛一遍一遍的看代码, 想看出问题.

这些都是错误的做法!!!

如果是几百行, 上千行代码, 将很难用眼睛看出问题.所以解决Bug的整体思路是:

  • 找到程序代码异常出现在第几行, 也就是哪一行代码的问题, 导致的Bug.
  • 找到问题后, 修改就方便了. 其实改Bug主要是不容易找到Bug在哪里.

4. 发现解决Bug利器 - 日志

看错误日志, 虽然都是英文的, 可能有些小伙伴看不懂, 但是建议通读一遍, 看看是否有提示错误出现在第几行, 很多简单的问题, 日志上已经指定了哪个类, 第几行的错误.

下面大家看例子:

/**
 * **@author** 健哥
 */
**public** **class** **TestA** {

    **int** a = 1;
    **int** b = 1;

    **public** String **sum**() {
        String total = "结果是:" + (a + b);
        **return** total;
    }

    **public** **static** **void** **main**(String[] args) {
        TestA a = **new** TestA();
        **int** total = Integer.parseInt(a.sum());

        System.out.println("=======" + total);
    }
}

运行结果如下:

本人从事网路安全工作12年,曾在2个大厂工作过,安全服务、售后服务、售前、攻防比赛、安全讲师、销售经理等职位都做过,对这个行业了解比较全面。

最近遍览了各种网络安全类的文章,内容参差不齐,其中不伐有大佬倾力教学,也有各种不良机构浑水摸鱼,在收到几条私信,发现大家对一套完整的系统的网络安全从学习路线到学习资料,甚至是工具有着不小的需求。

最后,我将这部分内容融会贯通成了一套282G的网络安全资料包,所有类目条理清晰,知识点层层递进,需要的小伙伴可以点击下方小卡片领取哦!下面就开始进入正题,如何从一个萌新一步一步进入网络安全行业。

学习路线图

其中最为瞩目也是最为基础的就是网络安全学习路线图,这里我给大家分享一份打磨了3个月,已经更新到4.0版本的网络安全学习路线图。

相比起繁琐的文字,还是生动的视频教程更加适合零基础的同学们学习,这里也是整理了一份与上述学习路线一一对应的网络安全视频教程。

网络安全工具箱

当然,当你入门之后,仅仅是视频教程已经不能满足你的需求了,你肯定需要学习各种工具的使用以及大量的实战项目,这里也分享一份我自己整理的网络安全入门工具以及使用教程和实战。

项目实战

最后就是项目实战,这里带来的是SRC资料&HW资料,毕竟实战是检验真理的唯一标准嘛~

面试题

归根结底,我们的最终目的都是为了就业,所以这份结合了多位朋友的亲身经验打磨的面试题合集你绝对不能错过!

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化资料的朋友,可以点击这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

;