——Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ——-
一Java开发工具的使用
A:notepad windows自带的记事本。
B:高级记事本
Editplus
Notepad++
UE
sublime3
C:集成开发工具(IDE)
开发和运行。
Eclipse
MyEclipse = Eclipse + 插件
Netbeans(AWT 图形)
二Eclipse概述
A:是一个集成的开发工具。专门针对Java的。
B:由IBM公司花了4千万美金。
C:Eclipse
免费
开源
由纯Java语言编写。所以,它需要你有一个JRE,最好还配置了环境变量。
D:MyEclipse
具有良好的扩展插件功能,但是针对插件收费。
三Eclipse的使用
A:选择工作空间
工作空间:其实就是我们将来的指定源代码所在的目录。
B:使用步骤:
a:在左边空白处或者点击File建立Java项目
在界面中写入一个项目名称,然后Finish即可。
b:展开项目,在原包src下建立一个普通包。cn.itcast
c:在cn.itcast包下建立一个类
在界面中写一个类名:HelloWorld。
并选择让main方法也被创建。
然后Finish即可。
d:在类中写功能
在main里面写一条输出语句。
e:编译和运行
编译:自动编译。在保存的那一刻已经帮你编译好了,如果有问题,会报错。
运行:
A:点击虫子后面的绿色内在三角形按钮。
不建议。
B:点击Run菜单下的run。
也可以使用快捷键 Ctrl+F11
C:选择要运行的文件或者在要运行的文件内容中
右键 – Run as - Java Application即可。
D:看到Console即可,它就是Eclipse自带的控制台。
四针对空间的一些简单配置
A:程序的编译和运行的环境配置(一般不改)
window – Preferences – Java
编译环境:Compiler 默认选中的就是最高版本。
运行环境:Installed JREs 默认会找你安装的那个JDK。建议配置了Java的环境变量。
问题:
低编译,高运行。可以。
高编译,低运行。不可以。
建议,编译和运行的版本一致。
B:如何去掉默认注释?
window – Preferences – Java – Code Style – Code Templates
选择右边你不想要的内容,通过Edit编辑。
注意:请值删除注释部分,不是注释部分的不要删除。
C:行号的显示和隐藏
显示:在代码区域的最左边的空白区域,右键 – Show Line Numbers即可。
隐藏:把上面的动作再做一次。
D:字体大小及颜色
a:Java代码区域的字体大小和颜色:
window – Preferences – General – Appearance – Colors And Fonts – Java修改。
b:控制台和其他文件:
window – Preferences – General – Appearance – Colors And Fonts – Basic – Text Font
五几个常用的快捷键
1)ctrl+n新建文件
2)ctrl+d删除一行
3)alt+/提示补齐 (main/syso/syse/for遍历最近的数组)
4)ctrl+shift+f格式化/右键 – source – Format
5)ctrl+shift+o 导包
6)ctrl+/ ctrl+shift+/ 注释
7)ctrl+f6 我个人做法:alt+q 切换当前编辑的文件/编辑下一个文件
8)alt+↑↓移动代码
9)ctrl+alt+↓ 复制本行
10)ctrl+w关闭当前文件 ctrl+shift+w关闭当前所有文件
11)shift+enter(回车) 从本行的任意位置进入到下一行
12)alt+enter
13)Ctrl+2出现提示后按L 直接使用返回类型进行接收
14)alt+shift+r 选定一个变量的多个引用
六制作帮助文档
A:首先编写源文件
B:针对源文件添加文档注释
C:选中项目–右键–Export–Java–Javadoc–Finish
七如何打jar包,以及jar包如何使用
jar是什么?
jar是多个class文件的压缩包。
A:打jar包
选中项目–右键–Export–Java–Jar–自己指定一个路径和一个名称–Finish
B:jar包有什么用,怎么用?
a:用于把别人写好的东西,直接拿过来使用。
b:怎么用
(1)找到jar包。
(2)复制jar包,粘贴到要使用的项目路径下。
(3)把jar添加到构建路径。classpath。
选中jar包,右键Build path – add to build path
(4)按照正常用法用就可以了。
八如何提高代码的开发效率
常见的操作:
A:自动生成get/set方法
在代码区域右键–source–Generate Getters and Setters…
B:写构造方法
a:无参构造方法 在代码区域右键–source–Generate Constructors from Superclass
b:带参构造方法 在代码区域右键–source–Generate Constructors using fields.. – finish
C:如果继承抽象类,或者实现接口,请在创建类的时候选择这些内容。
这样做的好处是:它会自动帮你添加继承或者实现,并把所有的抽象方法给重写了(空实现)。
D:@Override 注解。
作用是标记方法是重写父类的。如果有任何错误,就会报错。
九断点调试(Debug调试)
断点:就是一个标记。
A:如何设置断点
在语句的最左边,双击即可。
B:在哪里加
现在:在每一个方法的第一条语句上加。
以后:哪里不会加哪里。
C:怎么运行断点的程序
在代码区域–右键–Debug as–Java Appliaction
弹出一个界面:问你是否需要打开断点界面。并问你是否需要记录。
是(Yes),是(选中复选框)。
D:弹出了断点界面
a:点哪里
Step Over:跳过一行
F6:看到每一行的执行过程。
b:看哪里
看源代码:对照看程序的执行步骤
看Debug界面:对照看程序的执行步骤
看变量界面:看变量的产生,赋值,及消失。
E:如何去除断点
a:把添加的动作再做一遍
b:一键清除版
选择Debug界面–breakPoints–Remove All… 带两个x的。
十Math类的随机数
类名调用静态方法。
包:java.lang
类:Math
方法:public static double random():
java.lang包下的类是不用导包就可以直接使用的。
产生1-100之间的随机数:
int number = (int)(Math.random()*100)+1;
代码实例
public class Demo01_Math_Random {
public static void main(String[] args) {
//产生一个随机数,必须在1-100之间
int random = (int)(Math.random()*100)+1;
//创建对象,接收键盘录入
Scanner sc = new Scanner(System.in);
//提示输入数字
System.out.println("请输入您猜的数:");
//接收用户输入的猜的数
int guessNumber = sc.nextInt();
//只要猜的数与生成的随机数不同,就循环执行
while(guessNumber!=random) {
//如果猜的数比生成的随机数大,则打印大了
if(guessNumber>random) {
System.out.println("您猜的数大了");
}else {//如果猜的数比生成的随机数小,则打印小了
System.out.println("您猜的数小了");
}
//当出现一次循环后,提示大小后,就需要用户重新输入
System.out.println("请输入您猜的数:");
guessNumber = sc.nextInt();
}
//如果跳出循环说明用户猜对了,则输出您答对了,结束程序
System.out.println("恭喜你答对了");
}
}
十一Object类
(1)是定义在java.lang包下的,是所有类的超类。所有类都直接或者间接的继承自Object类。
父类:超类,根类,基类。
子类:派生类。
(2)要掌握的方法:
public String toString():返回对象的字符串表示形式。
默认情况下的组合:类的全路径名称+@+对象的哈希值的十六进制表示。
这种做法对我们来说,一般没有意义,所以,建议重写。
重写做法:一般是把所有的成员变量组合成一个字符串返回。
实在不愿意自己写,自动生成。
public boolean equals(Object obj):比较对象的地址值是否相同。
默认情况下,比较的是对象的地址值是否相同。
如果有自己的特殊需求,请重写Object类的该方法。
怎么重写呢?
public boolean equals(Object obj) {
if(this == obj) {
return true;
}
if(!(obj instraceof Student)) {
return false;
}
Student s = (Student) obj;
return this.name.equals(s.name) && this.age == s.age;
}
如果有多个成员变量,把多个比较用&&连接即可。
引用类型用equals()方法。
基本类型用==号即可。
实在不愿意自己写,自动生成。
public int hashCode():获取对象的hash地址值 如果重写,则返回重写之后的逻辑结果
代码实例
public class Demo04_toString {
public static void main(String[] args) {
Person p = new Person("唐嫣",18);
//获取该类的类型名称
String className = p.getClass().getName();
//@符
String at = "@";
//地址值
int hashCode = p.hashCode();
System.out.println(p);
String string = p.toString();
System.out.println(string);
System.out.println(className+at+hashCode);
}
}
注意 ==与equals()区别
public boolean equals(Object obj) 指示其他某个对象是否与此对象“相等”。
如果没有重写该方法:就是通过地址值判断两个对象是否相同,这与==号的功能完全一致
如果重写了该方法
==号是特殊的运算符,可以比较两个对象 的地址值是否相同。
public class Demo05_equals {
public static void main(String[] args) {
System.out.println(1==2);
Person p = new Person("唐嫣",28);
Person p2 = new Person("唐嫣",28);
System.out.println(p==p2);
System.out.println(p.equals(p2));
}
}