----------------------android培训、java培训、期待与您交流! ----------------------
当我学了基本的java基础知识之后,已能够写一个标准的学生类了,类里边包含基本的属性和一些方法,具体有:
1.私有的成员属性
为了提高安全性,将成员变量全部私有化
2.无参的构造方法和带成员属性的构造方法
为了防止出错,应该将无参构造方法写上,为了方便创建对象的时候给成员变量赋值,提供带有参数的构造方法
3.公开的set\get方法
为了提供外界对这个对象的访问,提供公开的访问方法
4.重写hasCode()方法
保证在使用集合对元素操作的时候出现不必要的错误,保证在相同\对象的情况下返回相同的哈希值
5.重写toString()方法
为了更好的提供学生的基本信息,将toString重写,返回字符串表示当前对象的形式
6.重写equals()方法
为了方便比较两个学生对象的比较,重写该方法
一下就是我写的一个学生类,还应该加上更多的注释,提高代码的可读性.
package cn.itheima;
/**
* 学生类
* @author 张百振
* @version 1.0
* */
public class Student {
// 成员变量
private String name;
private int age;
// 构造方法
public Student() {
super();
}
public Student(String name, int age) {
super();
this.name = name;
this.age = age;
}
// 提供set\get访问方法
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
// 重写hasCode()方法
@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + age;
result = prime * result + ((name == null) ? 0 : name.hashCode());
// 保证相同对象返回的哈希值相同,尽量做到不同对象的哈希值不同
return result;
}
// 重写equals()方法
@Override
public boolean equals(Object obj) {
// 判断自反性
if (this == obj)
return true;
// 判断是否为null
if (obj == null)
return false;
// 判断是否为当前类的实例
if (getClass() != obj.getClass())
return false;
// 强制类型转换
Student other = (Student) obj;
// 分别判断属性是否相等
if (age != other.age)
return false;
if (name == null) {
if (other.name != null)
return false;
} else if (!name.equals(other.name))
return false;
return true;
}
// 重写toString方法
@Override
public String toString() {
return "Student [name=" + name + ", age=" + age + "]";
}
}
----------------------android培训、java培训、期待与您交流! ----------------------