day11(eclispe,Debug,Object)

一.常见开发工具

1.eclispe插件安装
将插件解压后放到dropins目录即可。

2.Hierarchy 显示Java继承层次结构,选中类后F4

3.程序的编译和运行的环境配置
  window – Preferences – Java
  编译环境:Compiler 默认选中的就是最高版本。
  运行环境:Installed JREs 默认会找你安装的那个JDK。建议配置了Java的环境变量。
  问题:
    低编译,高运行。可以。
    高编译,低运行。不可以。
    建议,编译和运行的版本一致。

4.去掉默认注释
window – Preferences – Java – Code Style – Code Templates

5.字体大小及颜色

  • a:Java代码区域的字体大小和颜色:

    * window -- Preferences -- General -- Appearance -- Colors And Fonts --Java修改 -- Java Edit Text Font
    
  • b:控制台

    * window -- Preferences -- General -- Appearance -- Colors And Fonts -- Debug -- Console font
    
  • c:其他文件

    * window -- Preferences -- General -- Appearance -- Colors And Fonts -- Basic -- Text Font
    

6.窗体给弄乱了,怎么办?

  • window – Reset Perspective
  • 还可以自己创建还原点

7.取消悬浮提示

  • window – Preferences – Java–Editor–Hovers。右边将Combined Hover勾去掉。
  • F2查看提示

8.内容辅助键

  • a.Alt+/ 起提示作用
  • b.main+alt+/,syso+alt+/,给出其他提示
  • c.补充输出语句,选中需要输出的部分,alt+/选择最后一项即可
  • d.定义自己的alt + /
    windows–perference-Java-Editor-Templates–New

9.Eclipse中快捷键的使用
* A:新建 ctrl + n
* B:格式化 ctrl+shift+f
* C:导入包 ctrl+shift+o
* D:注释 ctrl+/,ctrl+shift+/(多行注释),ctrl+shift+\(取消多行注释)
* E:代码上下移动 选中代码alt+上/下箭头
* F:查看源码 选中类名(F3或者Ctrl+鼠标点击)
* G:查找具体的类 ctrl + shift + t
* H:查找具体类的具体方法 ctrl + o
* I:给建议 ctrl+1,根据右边生成左边的数据类型,生成方法
* J:删除代码 ctrl + d
* K:抽取方法alt + shift + m
* L:改名alt + shift + r (f2)

10.提高开发效率
  alt + shift + s
    A:自动生成构造方法
    B:自动生成get/set方法

11.生成jar包并导入到项目中
a.jar是什么?(一种可运行,一个不可运行)
  jar是多个class文件的压缩包。
  可运行:java -jar stu.jar
b.jar有什么用?
  用别人写好的东西
c.生成jar包
  选中项目–右键–Export–Java–Jar–自己指定一个路径和一个名称–Finish
d.导入jar包
  复制到项目路径下并添加至构建路径。

二.调试(Debug)

1.Debug的作用
  调试程序
  查看程序执行流程
2.查看程序执行流程

  • 什么是断点:

    * 就是一个标记,从哪里开始。
    
  • 如何设置断点:

    * 你想看哪里的程序,你就在那个有效程序的左边双击即可。
    
  • 在哪里设置断点:

    * 哪里不会点哪里。
    * 目前:我们就在每个方法的第一条有效语句上都加。
    
  • 如何运行设置断点后的程序:

    * 右键 -- Debug as -- Java Application
    
  • 看哪些地方:

    * Debug:断点测试的地方
        * 在这个地方,记住F6,或者点击也可以。一次看一行的执行过程。
    * Variables:查看程序的变量变化
    * ForDemo:被查看的源文件
    * Console:控制台
    

三.Object

http://www.importnew.com/20381.html

http://blog.csdn.net/SEU_Calvin/article/details/52094115?locationNum=5&fps=1

1.hashCode()方法
  public int hashCode()

  • a:返回该对象的哈希码值。默认情况下,该方法会根据对象的地址来计算。

  • b:不同对象的,hashCode()一般来说不会相同。但是,同一个对象的hashCode()值肯定相同。

2.Object类的equals()方法

  • a.指示其他某个对象是否与此对象“相等”。
  • b.默认情况下比较的是对象的引用是否相同。
  • c.由于比较对象的引用没有意义,一般建议重写该方法。
public class Set_Test {
    public static void main(String[] args) {
        HashSet<Student> stus = new HashSet<>();
        Student stu1 = new Student("1433140338","zdx",21);
        Student stu2 = new Student("1433140326","xsq",22);
        Student stu3 = new Student("1433140326","wbl",22);
        stus.add(stu1);
        stus.add(stu2);
        stus.add(stu3);
        Iterator<Student> s = stus.iterator();
        while(s.hasNext()){
            System.out.println(s.next().toString());
        }
    }
}   
class Student{
    private String Sno;
    private String name;
    private int age;
    public Student() {
        super();
    }
    public Student(String sno, String name, int age) {
        super();
        Sno = sno;
        this.name = name;
        this.age = age;
    }
    @Override
    public boolean equals(Object obj) {
        if(obj instanceof Student){
            Student stu = (Student)obj;
            return this.Sno == stu.Sno;
        }else{
            return false;
        }
    }
    @Override
    public int hashCode() {
        return Sno.hashCode();
    }
    @Override
    public String toString() {
        return "Student [Sno=" + Sno + ", name=" + name + ", age=" + age + "]";
    }
}

3.==号和equals方法的区别

  • ==是一个比较运算符号,既可以比较基本数据类型,也可以比较引用数据类型,基本数据类型比较的是值,引用数据类型比较的是地址值
  • equals方法是一个方法,只能比较引用数据类型,所有的对象都会继承Object类中的方法,如果没有重写Object类中的equals方法,equals方法和==号比较引用数据类型无区别,重写后的equals方法比较的是对象中的属性

4.Object类的getClass()方法
 public final Class getClass()

  • a:返回此 Object 的运行时类。
  • b:可以通过Class类中的一个方法,获取对象的真实类的全名称。 * public String getName()

5.toString()方法
 public String toString()

  • a:返回该对象的字符串表示。
  • b:它的值等于: getClass().getName() + “@” +
    Integer.toHexString(hashCode())
  • c:由于默认情况下的数据对我们来说没有意义,一般建议重写该方法。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值