java 深入技术一
1. myeclipse和debug调试
1)myeclipse重命名
包和类,方法,字段的重命名
重构,refactor-rename
方法,右键refactor-rename,按回车就重命名
Alt+Shift+s快速生成代码
当前搜索ctrl+f
全局搜索 search 整个工作空间上的关键字Ctrl+H
知道filesearch
2)myeclipse代码模板
Alt+/代码模板
windows-prefenrences-general-editors代码模板
修改servlet模板
eclipse.wizards,知道jar包
3)myeclipse 文件的打开方法是加载项
windows-prefenrences-general-editors-file
修改myeclipse 加载项
windows-prefenrences-general-startupand shutdown
4)JUnit单元测试
使用JUnit进行单元测试,用来测试一个方法,测试一个类的功能
取代main方法快速进行测试
@Test测试执行单个方法
@Ignore
@Before每个测试方法指向前都会执行一次
@beforeClass 一次执行动作执行一次,方法是静态
@AfterClass
5)assert断言
断言:就是检查判断,是实现自动化测试的轻量级方案
断言只在测试中使用,相当于if判断
为了方便调试程序,java提供一个关键字assert断言,用来确保一个表达式为true,但java在执行的时候默认是不启动断言检查的,现在的IDE工具默认也没有启动断言检查,不推荐使用,推荐使用JUnit的Assert断言类代替
org,junit.Assert 断言类的静态方法
asserEquals(expected,actual)
asserNull(object)对象
asserNotNull(object)对象
asserTrue(condition)表达式
asserFalse(condition)表达式
myeclipse_debug程序调试
debug视图
代码主窗口:代码视图
添加断点,看见程序执行到哪一步
线程方法调用堆栈窗口
变量窗口
断点窗口
watch窗口:查看变量的值,表达式的值
右击,添加行号;断点只能加在方法里面的代码上;
方法的进入,方法的跳出,方法的执行堆栈
debug流程
1.确定在那个地方添加断点
先阅读错误信息,找到异常在那句自己的代码上抛出,把断点加在这句代码前面
没法阅读错误信息,没法确定异常在哪抛出,则在自己写的代码第一局加断点
如果有main方法,就在main方法的第一局加断点
如果是servlet,就在自己写的servlet的第一句加断点
2.确定程序在那句自己写的代码上抛出异常
一般都可以通过错误信息找到出错的代码
如果没找到,就从最开始一步一步的控制程序往下执行,知道程序突然出现异常信息,就知道当前行代码出的错
如果出错的是自己写的代码,还可以进入这个方法内部,看看到底是那句代码出错
3.查看出错前各个变量的值
大部分错误都是由于变量的值不正确导致的
4.解决错误
针对错误原因的代码修改
修改后运行代码,还有一场,就再进行调试
java 深入技术一的更多相关文章
- Java数据库连接技术——JDBC
大家好,今天我们学习了Java如何连接数据库.之前学过.net语言的数据库操作,感觉就是一通百通,大同小异. JDBC是Java数据库连接技术的简称,提供连接各种常用数据库的能力. JDBC API ...
- java 深入技术八(内省)
1. javabean的软件设计思想 2.内省:封装了java反射,提供直接操作属性的Setter和getter方法的方法 3.核心API:BeanInfo java 的描述信息,Introspect ...
- (转)java缓存技术,记录
http://blog.csdn.net/madun/article/details/8569860 最近再ITEYE上看到关于讨论JAVA缓存技术的帖子比较多,自己不懂,所以上网大概搜了下,找到一篇 ...
- paip.java 架构师之路以及java高级技术
paip.java 架构师之路以及java高级技术 1. Annotation 设计模式... 概念满天飞.ORM,IOC,AOP. Validator lambda4j memcache. 对 ...
- 深入分析Java Web技术内幕(修订版)
阿里巴巴集团技术丛书 深入分析Java Web技术内幕(修订版)(阿里巴巴集团技术丛书.技术大牛范禹.玉伯.毕玄联合力荐!大型互联网公司开发应用实践!) 许令波 著 ISBN 978-7-121- ...
- Java序列化技术与Protobuff
http://www.cnblogs.com/fangfan/p/4094175.html http://www.cnblogs.com/fangfan/p/4094175.html 前言: Java ...
- Java加密技术(一)——BASE64与单向加密算法MD5&SHA&MAC
Java加密技术(一)——BASE64与单向加密算法MD5&SHA&MAC 博客分类: Java/Security Javabase64macmd5sha 加密解密,曾经是我一 ...
- 深入分析Java Web技术(1)
BS网络模型的基本过程: 当我们在浏览器中输入"www.google.com"的时候,首先会请求DNS服务器对域名进行解析成都应的IP地址,然后根据这个IP地址在互联网上找到谷歌的 ...
- Java分布式应用技术架构介绍
分布式架构的演进 系统架构演化历程-初始阶段架构
- Java Web技术总结(目录)
来源于:http://www.jianshu.com/p/539bdb7d6cfa Java Web技术经验总结(一) Java Web技术经验总结(二) Java Web技术经验总结(三) Java ...
随机推荐
- 在c#中使用指针
如果想在c#中使用指针,首先对项目进行配置:在解决方案资源管理器中右击项目名选择属性(或在项目菜单中选择consoleApplication属性(consoleApplication为项名)),在生成 ...
- 软件工程(FZU2015)赛季得分榜,第三回合
目录 第一回合 第二回合 第三回合 第四回合 第五回合 第6回合 第7回合 第8回合 第9回合 第10回合 第11回合 积分规则 积分制: 作业为10分制,练习为3分制:alpha30分: 团队项目分 ...
- Spring AOP动态切换数据源
现在稍微复杂一点的项目,一个数据库也可能搞不定,可能还涉及分布式事务什么的,不过由于现在我只是做一个接口集成的项目,所以分布式就先不用了,用Spring AOP来达到切换数据源,查询不同的数据库就可以 ...
- javascript拖动div
div拖动代码,在用此代码之前,你可能需要将你需要拖动的元素style设置position: absolute; #textareaSavaDiv{ position: absolute; right ...
- linux管道命令grep命令参数及用法详解---附使用案例|grep
功能说明:查找文件里符合条件的字符串. 语 法:grep [-abcEFGhHilLnqrsvVwxy][-A<显示列数>][-B<显示列数>][-C<显示列数>] ...
- win10 64位安装memcache扩展和开启redis扩展
前面有关于win10下搭建wamp环境的介绍,在此不在赘述,php操作memcache有memcache库和memcached库,其中memcache是php内置的扩展库,支持面向对象和面向过程两种操 ...
- Gravatar注册
今天在学习falsk时需要用到头像扩展,需要使用gravatar到网上查了查好像没有被墙,就试着用qq邮箱注册了一个账号,结果等了好长时间也没有等到激活邮箱,就百度了一下发现了一个技巧,原来这封邮件被 ...
- Linux--niaoge
鸟哥的Linux私房菜 网络基础: 那 TCP/IP 是如何运作的呢?我们就拿妳常常连上的 Yahoo 入口网站来做个说明好了,整个联机的状态可以这样看: 应用程序阶段:妳打开浏览器,在浏览器上面输入 ...
- Html:form表单
1:onsubmit 事件:会在表单中的确认按钮被点击时发生. <form action="" method="post" name="form ...
- 深入理解IoC/DI
------------------------------------------------------------------------ 理解IoC/DI 1.控制反转 --> 谁控制谁 ...