IDEA相关操作
IDEA安装
安装链接:JetBrains: Essential tools for software developers and teams
根据系统下载安装包,修改安装路径,然后什么也不用选,安装好就可以了。
更改字体
FILE——Settings——Editor——font——23
新建项目
为了在合适的文件夹下新建文件,我们首先要找到文件夹(以JavaProject为例)
可以在Module JDK处找到我们JDK的安装目录(找到根目录即可,不需要bin)。
注意:Module name与root要保持一致,如果文件夹里没有JavaProject文件,那么就会根据路径创造一个。
然后就是在JavaProject中创建一个项目文件夹,我们假设为Hello。
同样的,name与root保持一致,否则会出现错误。
在Hello中的src文件夹里创造Java Class(注意那个Hello.iml不能删除,否则src会失效)。然后起一个名字,在里面书写代码即可。
在Bulid中查看代码运行结果(或者直接点箭头)。
修改菜单字体
修改主题
修改编码
快捷键
1. 删除当前行,默认是ctrl + Y,可以自己配置为 ctrl +d。
2. 在下一行复制当前行,默认ctrl+d,自己可以配置成 ctrl + alt + 向下箭头(似乎笔记本不行)。
3. 补全代码:alt + /
4. 添加注释:ctrl + /
5. 导入改行需要的类(比如Scanner):先配置auto import,然后使用 alt + enter(默认)。把两个对号都选上即可。
6. 快速格式化代码 ctrl + alt + L
7. 快速运行程序:默认为 shift + F10,自己定义: alt + R,要注意一点,新写完的程序第一次运行需要手动操作,因为没有这个程序运行的记录,手动运行一次后就可以使用快捷键了。
8. 生成构造器:alt + insert —> constructor —> alt多选(选中的元素将成为参数)
9. 查看一个类的层级关系:ctrl + H
10. 将鼠标把一个方法名拉住,输入 ctrl + B,可以定位到该方法定义的位置。
11. 通过在new后面加 .var 可以自动分配变量名。
12. 生成封装的 Set 和 Get 函数:alt + Insert —-> Getter and Setter —-> 按住 ctrl 多选。
13. 去掉构造器的提示信息: 把”Show parameter hins for”去掉就好了。
14. 生成for循环:XX.for
15. 每次创建类都生成版权信息:在Includes里书写
模板
file -> settings -> editor -> Live templates -> Java:查看有哪些模板快捷键,也可以自己增加模板。常用的比如 main,sout,fori 等。
用右上角的加号添加自己的模板:
在左下角的 define 中,添加作用域。
生成输出语句:
生成for循环:
生成main方法:
断点调试(debug)
简介
- 断点调试是指在程序的某一行设置一个断点,调试时,程序运行到这一行就会停住,然后可以一步一步往下调试,调试过程中可以看各个变量当前的值,出错的话,调试到出错的代码行即显示错误,停下。进行分析从而找到这个Bug。
2. 断点调试是程序员必须掌握的技能。
3. 断点调试也能帮助我们查看Java底层源代码的执行过程,提高程序员的Java水平。
注:在断点调试的过程中,是运行状态,是以对象的运行状态来执行的。快捷键
F7(跳入方法内) F8(逐行执行代码) shift + F8(跳出方法) F9(resume,执行到下一个断点)
调试异常
int[] a = {1,2,3};
for(int i = 0 ; i<4;i++ ){
System.out.println(a[i]); //在i=3时会报错
}
查看源码
方法1:使用 foce step into : 快捷键为 alt + shift +F7。
方法2:Settings —> Build,Execution,Deployment —> Debugger —> Stepping,把 Do not step into the classes 中的 java. 和 javax. 取消勾选。然后用Step into(F7)即可进入方法。
退出方法查看用Step out(shift + F8)。
语句跳跃
用 Resume Program(F9)可以将Debug跳转到下一个断点,中间的语句直接执行。值得一提的是——1. 可以用Step into 进入方法后,在方法里设置断点。2. 在Debug过程中也可以设置断点。对象断点的应用
1. 可以用Debug查看对象创建的过程。
用Step into 进入该对象中查看具体初始化方法。
默认初始化:
显示初始化:
构造器:
2. 可以用断点调试一步步查找到调用的方法。
用Step into进入 println 方法。
再用Step into方法进入 valueOf 这个方法。
发现 valueOf 调用了 toString 方法,用Step into进入 toString 方法。
最终找到了在Person类中重写的 toString 方法。
3. 还可以用断点调试验证动态绑定机制
Step into后发现调用的是学生的方法。按照向上转型的理论,不能调用子类独有的成员。当调用run方法时,根据动态绑定机制先从子类查找,而调用属性时,没有动态绑定,根据编译类型。public class Person {
public void run(){
System.out.println("人类跑步");
}
} //父类
public class Student extends Person{
public void run(){
System.out.println("学生跑步");
}
}//子类
public static void main(String[] args) {
Person a = new Student();//向上转型
a.run(); //Step into
}