java与.net比较学习系列开发环境和常用调试技巧常用操作快捷键
调试 | |||
F5 | F11 | 调试运行 | |
CTRL+F5 | 暂无 | 非调试运行 | |
F6 | 不适用 | 编译整个解决方案 | |
SHIFT+F6 | 不适用 | 编译当前选择的工程 | |
SHIFT+F5 | CTRL+F2 | 停止调试 | |
F9 | CTRL+SHIFT+B(break) | 插入或取消断点 | |
CTRL+SHIFT+F9 | 暂无 | 取消所有断点 | |
F10 | F6 | 单步执行,但直接执行函数中调用部分而不分步 | |
F11 | F5 | 单步执行,并且单步执行函数中调用部分 | |
SHIFT+F11 | F7(继续运行为F8) | 执行当前函数剩余部分代码 |
另外,Eclipse有一些自己独特的快捷键,也非常好用,如下:
Visual Studio | Eclipse | 操作 | |
编辑 | |||
CTRL+E+C | CTRL+/ | 注释,注释选中的代码(如果没有选中任何行,则默认注释当前行代码) | |
CTRL+E+U | CTRL+/(再按) | 取消注释,取消注释选中的代码 | |
CTRL+E+D | CTRL+SHIFT+F | 格式化整个文档 | |
CTRL+J | ALT+/ | 列出成员 | |
CTRL + SHIFT + 空格 | ALT+/ | 提示鼠标所在方法的参数类型和个数 | |
CTRL+M+L | CTRL+O | 快速OutLine | |
命中断点后,接下来我们可以选择F10单步运行,F11进入调用函数内部,或Shift+F11从调用函数返回到函数调用处。而对于Eclipse,单步运行是F6,进入调用函数内部是F5,返回到函数调用处是F7
注意JAVA和C#不同:在C#中方法名一般用pascal帕斯卡命名法,即每个单词首字母都大写,而在java中,方法名一般用camel骆驼命名法,即第一个单词首字母小写,后面的单词首字母都大写。
比如,定义一个人的类,可以命名为Person;定义一个获取人名的方法,可以命名为getPersonName(在C#中一般是GetPersonName)。
可以看出,访问修饰符的概念java和C#差不多,只不过C#中不仅包括以下三种修饰符,还包括更多的修饰符比如internal等。另外,有一个概念的区别需要我们注意,java中的包(即jar包),在C#中一般称为程序集(即dll)。
2,类,接口,方法和变量修饰符关键字
1) class,声明类的关键字,比如我们声明一个人的类,可以这样,public class Person{}。
2) interface,声明接口,比如要声明人的接口,可以这样,public interface IPerson{}。
3) implements,类实现接口,比如要让人的类Person实现IPerson接口,可以这样实现,public class Person implements IPerson{}。
4) extends,用于继承,比如我们定义一个男孩Boy类继承Person类,可以这样,public class Boy extends Person{}。
5) abstract,抽象修饰符,比如我们要定义一个抽象类,可以这样,public abstract class Person{},
6) static,静态的,static可以修饰类,方法和变量。
7) new,实例化对象。一般在实例化某个类的对象的时候使用。
总结:需要注意的是,实现接口和继承的时候,java和.net的实现方式是不一样的,在java中类实现接口使用implements关键字,实现继承使用extends,而在.net中是用符号”:”来实现的。
3,流程控制语句关键字
流程控制语句包括if…else语句,for语句,switch…case…default语句,do…while语句,return语句,continue语句和break语句等。
总结:java中没有foreach语句关键字,但是有增强版的for循环实现了类似于.net中foreach的功能。具体的后面在讲集合的遍历的时候会总结到。
4 异常处理关键字
异常处理一般的结构是,try…catch…finally,当然还包括throw。这跟.net中是完全一样的。
5,包控制关键字
包控制关键字包含两个,分别是Package来定义包,并将类定义到这个包中。还有一个是import关键字,import是将包或者类导入到程序中。
总结:Package这个是java独有的,而import有点类似于.net中的using。
6,数据类型关键字
java中共有八种基本数据类型,每一个基本数据类型都需要一个关键字来定义。
分别是short短整型,int整型,long长整型,float单精度浮点型,double双精度浮点型,byte字节型,char字符型和boolean布尔型。这些与.net类似。
7,特殊类型的关键字
主要有两个,这两个也比较常用。
1) this,引用当前类对象。
2) super,引用父类。
3) void,用于定义没有返回值的方法。
总结:java与.net不同的是,在java中引用父类用super,而在C#中则使用base。