文档版本 | 开发工具 | 测试平台 | 工程名字 | 日期 | 作者 | 备注 |
---|---|---|---|---|---|---|
V1.0 | 2016.03.03 | lutianfei | none |
Eclipse的概述
- Eclipse是一种可扩展的开放源代码的IDE。
- Eclipse的特点描述
- 免费
- 纯Java语言编写
- 免安装
- 扩展性强
MyEclipse概述
- 在Eclipse基础上追加的功能性插件,对插件收费
- 在WEB开发中提供强大的系统架构平台
Eclipse的基本使用
HelloWorld案例
-
1、File-> New ->Project 选
Java Project
-
2、 命名工程后选择
Finish
-
3、 新建一个包
-
4、新建一个类
-
5、 编译
- 自动编译,在保存的那一刻帮你做好了
-
6、运行
- 点击虫子后面的绿色内在三角形按钮
- 点击Run菜单下的run。也可以使用快捷键Ctrl+F11
- 选择要运行的文件或者在要运行的文件内容中
- 一般情况下:右键 -- Run as - Java Application即可
- 看到Console即可,它就是Eclipse自带的控制台
源代码语法检查
- 红色波浪线 :错误的源代码
- 黄色波浪线 :未使用的成员或有安全隐患的成员
大纲视窗的使用
-
根据大纲视窗中的不同图标,判断不同的变量状态。
-
选中某个类后按
F4
可以看到=该类的继承状态。
基本环境设置
字体颜色和大小
代码区:
window
->Preferences
->General
->Appearance
->Colors And Fonts
->Java Edit Text Font
控制台:
Debug
->Console font
其他文件
Basic
->Text Font
窗口还原
window
->Perspective
-> Reset Perspective
控制台还原
Window
--Show View
—Console
常用快捷键
-
内容辅助键
- Alt+/ 起提示作用
- main+alt+/,syso+alt+/,给出其他提示
格式化
ctrl
+shift
+f
导入包
ctrl
+shift
+o
单行注释
ctrl
+/
多行注释:
ctrl
+shift
+/
多行去注释:
ctrl
+shift
+\
代码上下移动 选中代码
alt
+上/下箭头
查看源码 选中类名(
F3
或者Ctrl
+鼠标点击)
提高开发效率的快捷键
-
自动生成构造方法
- 无参构造方法 :
Alt
+Shift
+s
+c
- 带参构造方法 :
Alt
+Shift
+s
+o
- 无参构造方法 :
自动生成get/set方法 :
Alt
+Shift
+s
+r
-
继承抽象类,或者实现接口
-
如下设置可将重写方法模板直接给出
-
package cn.itcast_03;
public class Cat extends Animal {
@Override
public void eat() {
// TODO Auto-generated method stub
System.out.println("Hello Cat");
}
}
- 注:这里
@Overide
是注解的意思,即这个方法是重写父类的,如果和父类名字不一致就会报错。
生成jar包并使用jar包
- jar是什么?
- jar是多个class文件的压缩包。
- jar有什么用?
- 用别人写好的东西
- 打jar包
- 选中
项目
--右键--Export
--Java
--Jar
--自己指定一个路径和一个名称--Finish-
step1:
-
step2:
-
step3:
-
- 选中
- 使用jar包
- 复制到项目路径下并添加至构建路径。
-
step1:
-
step2:
-
- 复制到项目路径下并添加至构建路径。
Eclipse中如何制作帮助文档
- 选中项目--右键--Export--Java--Javadoc—Finish
删除项目和导入项目
- 删除项目
- 选中项目 – 右键 – 删除
- 从项目区域中删除
- 从硬盘上删除
- 选中项目 – 右键 – 删除
- 导入项目
- 在项目区域右键找到import
- 找到General,展开,并找到
- Existing Projects into Workspace
- 点击next,然后选择你要导入的项目
- 注意:这里选择的是项目名称
修改项目名称
- 除了项目文件夹名字要修改,不要忘记了配置文件.project中的
高级(Debug)调试
-
单步调试:
F6
断点查看基本数据类型和引用数据类型的参数传递问题
Object类
Object类的成员方法
-
public int hashCode()
- A:返回该对象的哈希码值。默认情况下,该方法会根据对象的地址来计算。
- B:不同对象的,hashCode()一般来说不会相同。但是,同一个对象的hashCode()值肯定相同。
- C:不是对象的实际地址值,可以理解为逻辑地址值
-
public final Class getClass()
返回此 Object 的运行时类- A:返回此 Object 的运行时类。
- B:可以通过Class类中的一个方法,获取对象的真实类的全名称。
- eg:
Student s = new Student(); Class c = s.getClass(); String str = c.getName(); System.out.println(str); // cn.itcast_01.Student //链式编程 String str2 = s.getClass().getName(); System.out.println(str2);
-
public String toString(): 返回该对象的字符串表示,默认是全路径+
@
+哈希值的十六进制表示。- 其返回值等价于:getClass().getName() + '@' + Integer.toHexString(hashCode())
-
toHexString
是Integer
类下的一个静态方法:把一个整数转成一个十六进制表示的字符串
-
- eg:
//两行代码结果一致 System.out.println(s.getClass().getName() + '@' + Integer.toHexString(s.hashCode())); System.out.println(s.toString());
- 注:直接输出一个对象的名称,其实就是调用该对象的toString方法。
- 其返回值等价于:getClass().getName() + '@' + Integer.toHexString(hashCode())
-
public boolean <font color = red> equals</font> (Object obj) : 指示其他某个对象是否与此对象“相等”。
- 默认情况下比较的是地址值。
protected void finalize(): 当垃圾回收器确定不存在对该对象的更多引用时,由对象的垃圾回收器调用此方法。用于垃圾回收,但是什么时候回收不确定。
-
protected Object clone():创建并返回此对象的一个副本
-
Cloneable
:此类实现了 Cloneable 接口,以指示 Object.clone() 方法可以合法地对该类实例进行按字段复制。这个接口是标记接口,告诉我们实现该接口的类就可以实现对象的复制了。
-
public class Student implements Cloneable {
private String name;
private int age;
public Student() {
super();
}
public class StudentDemo {
public static void main(String[] args) throws CloneNotSupportedException {
//创建学生对象
Student s = new Student();
s.setName("林青霞");
s.setAge(27);
//克隆学生对象
Object obj = s.clone();
Student s2 = (Student)obj;
System.out.println("---------");
System.out.println(s.getName()+"---"+s.getAge());
System.out.println(s2.getName()+"---"+s2.getAge());
//以前的做法
Student s3 = s;
System.out.println(s3.getName()+"---"+s3.getAge());
System.out.println("---------");
//其实是有区别的
s3.setName("刘意");
s3.setAge(30);
System.out.println(s.getName()+"---"+s.getAge());
System.out.println(s2.getName()+"---"+s2.getAge());
System.out.println(s3.getName()+"---"+s3.getAge());
}
}
-
toString方法的重写
- 右键->Source -> Generate toString()...
- 快捷键:
Alt
+Shift
+s
+s
-
equals
方法的重写:- 方式一:手动重写(如下)
- 方式二:自动生成:
- 右键->Source -> Generate hashCode and equals()...
- 快捷键:
Alt
+Shift
+s
+h
Eg: 重写equals方法:
@Override
public boolean equals(Object obj) {
//name是String类型的,而String是引用类型的,所以,在这里不能直接用==比较,应该用equals()比较
//String的equals()方法是重写自Object类的,比较的是字符串的内容是否相同
//this -- s1
//obj -- s2
//我们要使用的是学生类的特有成员变量,所以要向下转型
Student s = (Student)obj; //s -- obj -- s2;
if(!(obj instanceof Student)){
return false;
}
//如果是就继续
Student s = (Student)obj;
//System.out.println("同一个对象,还需要向下转型并比较吗?");
return this.name.equals(s.name) && this.age == s.age;
}
-
==
的用法:- 基本类型:比较的就是值是否相同
- 引用类型:比较的就是地址值是否相同
equals
只能比较引用类型,默认情况下比较的是地址值是否相同,但可以根据需求重写该方法。-
instanceof
: 判断对象名是否是该类名的一个对象- 格式:
对象名
instanceof
类名
- 格式: