先来个完整的效果代码:其目的创建5个学生对象,录入姓名与年龄的对象,并用集合将其遍历出来。易错点:1、如果不在学生对象中重写toString方法,那么在集合中就会出现,遍历出来后的arr{i}全部都是引用的对象地址,并不是对象。2、引用数据类型与基本数据类型最大的区别,引用数据类型要事先定义好各项属性与方法。要知道有参构造的作用是初始化方法里的属性。3、定义setname()、getname()、setage()、getage()这四个方法,通过这四个方法来实现对name和age的操作。这样一来,我不用直接对Person类中的域变量操作,而是通过set和get方法间接地操作这些变量,这样就能提高域变量的安全性,同时又保证了域变量的封装型。4、总之,无参构造与有参构造,get与set方法,tostring一个都不能少。
现在Student中创建studen.zclasst学生类对象:
package Student;
public class student {
private String name;
private int age;
public student(String name, int age) {
this.name = name;
this.age = age;
}
public student() {
}
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;
}
@Override
public String toString() {
return "student{" +
"name='" + name + '\'' +
", age=" + age +
'}';
}
}
集合页面需要处理的代码:
package Collection;
import Student.student;
public class collection {
public static void main(String[] args) {
student[] arr = new student[5];
arr[0] = new student("孙玉滨",21);
arr[1] = new student("李晓妹",22);
arr[2] = new student("李二妹",23);
for (int i=0;i<arr.length;i++){
System.out.println(arr[i]);
}
}
}