Java eclipse 的快捷键生成包/类.
无参构造方法,有参构造方法,set/get方法
使用hashCode方法、equals方法、toString方法
题目:
(1)在第5题创建的java项目myday11中,建立包com.heima.domain
(2)在com.heima.domain包定义一个学生类Student,包含姓名(String name)、性别(String gender)、年龄(int age)、成绩(int score),所有属性要私有
(3)利用快捷键生成空参构造、有参构造、set方法、get方法、hashCode方法、equals方法、toString方法
(4)在myday11项目的com.heima.tests包中建立一个类Test05,对Student类进行测试(要求测试空参构造、有参构造、set方法、get方法、hashCode方法、equals方法、toString方法)
(5)分析Eclipse自动生成的equals方法的代码流程
测试类:Demo1
package com.heima.domain;
//测试类
public class Demo1 {
public static void main(String[] args) {
Student s1 = new Student("张三", "男", 18, 100);
Student s2 = new Student("张三", "男", 18, 100);
// toString方法
System.out.println(s1);
System.out.println(s2);
// hashCode方法
int hashcode1 = s1.hashCode();
int hashcode2 = s2.hashCode();
System.out.println(hashcode1);
System.out.println(hashcode2);
// equals方法
System.out.println(s1.equals(s2));
}
}
学生类:Student
package com.heima.domain;
public class Student {
private String name;
private String gender;
private int age;
private int score;
// 空can构造方法 alt+shift+s +c
public Student() {
super();
}
// 有参构造方法 alt+shift+s +o
public Student(String name, String gender, int age, int score) {
super();
this.name = name;
this.gender = gender;
this.age = age;
this.score = score;
}
// 生成 set get 方法 alt+shift+s+ r
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getGender() {
return gender;
}
public void setGender(String gender) {
this.gender = gender;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public int getScore() {
return score;
}
public void setScore(int score) {
this.score = score;
}
// 快捷键生成toString方法 alt+shift+s+ s
public String toString() {
return "Student [name=" + name + ", gender=" + gender + ", age=" + age
+ ", score=" + score + "]";
}
// 快捷键生成 equals 方法 alt+shift+s+ v
public boolean equals(Object obj) {
Student s = (Student) obj;
return this.name.equals(s.name) && this.gender.equals(s.gender)
&& this.age == age && this.score == score;
}
}
|