eclipse内容辅助键
alt+ /用法:
Alt+/ 提示作用 帮助补齐一些东西,还可以帮助你起名字,
main+alt+/,syso+alt+/
alt+shift+s给出一些快捷操作,比如format就是格式化代码,下方的generate就是一些自动转换的方法,
比如点击变量,就自动生成了toString方法
eclipse快捷键:
1:格式化 ctrl+shift+f
2:导入包 ctrl+shift+o
如果该类在一个包中有就直接出来了,
如果多个包中都有,会弹出一个框框供你选择,不懂就用API去查一下
3:alt+/ 可以提示你跟多东西
4:注释:ctrl+/
ctrl+shift+/, strl+shift+\
5:代码上下移动 选中代码 Alt+上\下 箭头
6:查看源码, 选中类名,(F3或者Ctrl+鼠标点击)
Object的常用方法:
1:public int hashCode()
返回该对象的哈希码值。支持此方法是为了提高哈希表(例如 java.util.Hashtable 提供的哈希表)的性能。
2:public final Class<?> getClass()
返回此 Object 的运行时类。返回的 Class 对象是由所表示类的 static synchronized 方法锁定的对象。
注意这个返回值是Class类的一个对象
1:Class类的其中一个方法名字叫:getName,这个方法是获取相应类的class文件的文件名的方法
2:toString方法会返回一个“以文本方式表示的”此对象的字符串。结果应该是一个简明易于读懂的表达式。
换句话说,该方法返回一个字符串,它的值等于:
getClass().getName() + ‘@‘+Integer.toHexString(hashCode);
返回一个该对象的字符表示
3:Integer.toHexString(int i):把一个整数装换成十六进制的字符串
4:toString, 父类的toString的返回至使没有意义的,
可以重写toString以返回一些有用的信息,
也可以不重写,自动生成toString,自动生成的toString包含该对象的成员变量的详细信息
世界System.out.println(对象名称)的结果也是返回该对象的成员变量的详细信息
输出对象的时候相当于调用的该对象的toString方法,转换成字符串了
如果没有重写,该对象名打印出来的还是类名+‘@‘+ 地址值
基本类型比较的时候比较的是值是否相同。
引用类型比较的时候比较的是地址值是否相同,例如
Student s1 = new Student();
Student s2 = new Student();
System.out.println(s1 == s2);//输出false
Student s3 = s1;
System.out.println(s1 == s3);//输出true
5:public boolean equals(Object obj);指示其他对象是否与此对象“相等”
这个方法,默认情况下比较的是地址值。比较地址值一般来说意义不大,所以我们要重写该方法,一般比较成员变量是否相同
例如:
public boolean equals(Object obj){
Student s = (Student)obj;
if(this.name.equals(s.name) && this.age == obj.age){
return true;
}else {
return false;
}
}
但是,如果要比较的两个对象本身地址就相同,那就不用比较了,直接返回true,因为那就是同一个对象
如果要比较的两个对象属于不同的类呢?
这个时候必须在equals代码中加上判断两个对象是否是同一个类的代码,如果是就不是同一个类直接返回false
如果是同一个类那就继续判断这两个对象是否相同
用法: 对象名 instanceof 类名
@@@重写的代码优化:提高效率,提高程序的健壮性,最终版还是自动生成的
equals:
引用类型:默认情况下比较的是地址值
不过我们可以根据实际情况重写该方法。一般重写都是自动生成,比较对象的成员变量是否相同。
6: protected void finalize() 当垃圾回收器不存在对该对象的更多引用时,由对象的垃圾回收器调用该方法。
该方法用于垃圾回收,但是什么时候回收不确定。重写这个方法实现资源的重新配置。
7:protected Object clone();创建并返回该对象的一个副本。
Cloneable:此类实现了Coloneable接口,以指示Object.clone()方法可以合法的对该类实例进行案子段复制。
这个接口是标记接口,是告诉我们事先该接口的类就可以实现对象的复制了。
a:也就是说将来如果想让该对象被克隆,就必须让要克隆的类实现Clonealbe接口。
b:克隆的时候要抛出异常
c:如果要用克隆方法的话,自己写的类一定要重写clone方法,因为clone是用protect修饰的.
如果不重写,只有Object类的子类,也就是说自己写的那个类里面才能用这个方法。
学编程最好的技巧有事没事上网上或者论坛上去看一些比较优秀的技术文章,一些比较好的代码!!!!!
你看别人怎么设计这个类的,别人怎么来写这个方法名,别人怎么写返回值的,别人怎么定参数的
看别人写的多了,你慢慢就会些这些东西了
!!!!!!!!!!!!!!!!!!!!!
学习编程要现学现用,除了一些特别基础的东西之外,学完之后立马就用,
有点基础之后,在完成一些比较大的功能的时候,做不出来也正常,
你至少现在去学习要完成它需要学什么,学完之后立马就用,开发的时候很多时候就是这样的
所以编程学到后来难在你不知道你要做什么,其实怎么做很简单,
这个东西,你不会做肯定有人会,你遇到问题,很多年前肯定有人遇到过了
你现在的问题就是你不知道怎么去搜这些东西,一旦你的基础掌握之后,再回头看,你就会觉得这些很简单
所以编程最大的问题不是怎么去实现,而在于你要知道你要做什么,就是需求问题
!!!!!!!!!!!!!!!!!!!!!!
出问题的时候:
1:是不是没有导入包 ctrl+shift+o;
2: 是不是自动加上的代码出的问题
注意删除的时候是只从工作空间删除了还是永久删除了
导入项目到工作空间:
在项目区域右键找到import
找到General,展开并找到
Existing Projects into WorkSpace
点击next,然后选择你要导入的项目
修改项目问题的时候
1:不要随意修改项目的名称
2:如果真的要修改项目的名称,不要忘记配置文件.project中的<name>把这里改为你该后的名称</name>
查看项目所在的路径
选中-右键-Properties-Resource-Location
导入项目的时候需要注意,项目空间里不可能出现同名的项目
如何去断点:
找到Debug视图的varables界面,找到breakpoints,并点击,然后看到所有的断点,最后点击双叉号,move all