import java.util.*; //要使用Scanner类
public class testMain
{
public static void main(String[] arg)
{
Student[] s=new Student[3];
public class testMain
{
public static void main(String[] arg)
{
Student[] s=new Student[3];
init(s);
input(s);
show(s);
}
input(s);
show(s);
}
//初始化数组,如果没有初始化,则出现java.lang.NullPointerException问题
static void init(Student[] s)
{
for(int i=0;i<s.length;i++)
{ s[i]=new Student(); }
}
static void init(Student[] s)
{
for(int i=0;i<s.length;i++)
{ s[i]=new Student(); }
}
//信息输入
static void input(Student[] s)
{
for(int i=0;i<s.length;i++)
{
System.out.println("Input No."+i+" object:");
s[i].input();
}
}
static void input(Student[] s)
{
for(int i=0;i<s.length;i++)
{
System.out.println("Input No."+i+" object:");
s[i].input();
}
}
//信息输出
static void show(Student[] s)
{
for(int i=0;i<s.length;i++)
s[i].show();
}
}
static void show(Student[] s)
{
for(int i=0;i<s.length;i++)
s[i].show();
}
}
//**********************************
class Student
{
private static int counter;
private String name;
private int age;
private Scanner in;
{
private static int counter;
private String name;
private int age;
private Scanner in;
static {counter=0;}//静态变量初始化
public Student()
{
name="";
age=0;
in=new Scanner(System.in);
}
public void input()
{
name=in.next();
age=in.nextInt();
}
public void show()
{ counter++;
System.out.println("No."+counter+": "+this.name+","+this.age);
}
}
public Student()
{
name="";
age=0;
in=new Scanner(System.in);
}
public void input()
{
name=in.next();
age=in.nextInt();
}
public void show()
{ counter++;
System.out.println("No."+counter+": "+this.name+","+this.age);
}
}
说明如下:
/*********************/
Student[] s=new Student[10];
//创建了10个引用
void init0()
{
Student a=new Student();
for(int i=0;i<10;i++)
s[i]=a;
}//s[0]...s[9]都是对同一个实例的引用