创建具有不同参数长度的类

时间:2013-09-15 02:20:50

标签: java

如何创建具有不同长度参数的类?

public static void main(String[] args) {
    group g1 = new group("Redskins");
    group g2 = new group("Zack", "Mills", 21);
    group g3 = new group("John","Smith",20);
    group g4 = new group("Fred","Fonsi",44);
    group g5 = new group("Jeb","Bush",26);


    System.out.println(g1.getName());
}

}

我希望能够显示团队名称(红皮),然后使用一种方法显示每个成员。

我尝试过使用两种方法来实现它,但却无法获得一种方法。

我在想可能使用数组,但不确定是否可行。

感谢您的帮助。

我有三个班级,主要是学生和小组。 我需要组类来显示组名,然后找出如何在下面显示学生信息。唯一的问题是,我的任务是模糊的,我是否可以使用两种方法或一种方法。

public class student {
    String firstName;
String lastName;
    int age; 
    student(String informedFirstName, String informedLastName, int informedAge){
        firstName = informedFirstName;
        lastName = informedLastName;
        age = informedAge;
    }

    String getName()
{
    return "Name = " + firstName + " " + lastName + ", " + "Age = " + age;


}   

}

2 个答案:

答案 0 :(得分:2)

public class Team{
   String name;
   Set<Player> players;

   public Team(String name){
      this.name = name;
   }

   public void addPlayer(Player p){
      players.add(p);
   }
}


public class Player{
   String name;
   etc
}

修改问题的编辑:

好的,我会在这里展示很多。这是一个适合你学生想要的Java版本。

public class Student {

    private String firstName;
    private String lastName;
    private int age;

    public Student(String firstName, String lastName, int age){
        this.firstName = firstName;
        this.lastName = lastName;
        this.age = age;
    }   

    /*
     * Use:
     * Student s = new Student(Bill, Nye, 57);
     * System.out.println(s.toString()); 
     */
    @Override
    public String toString() {      
        return "First Name: " + firstName + ", Last Name: " + lastName + ", Age: " + age;
    }

    public String getFirstName() {
        return firstName;
    }

    public void setFirstName(String firstName) {
        this.firstName = firstName;
    }

    public String getLastName() {
        return lastName;
    }

    public void setLastName(String lastName) {
        this.lastName = lastName;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }
}

要从这里拿走的东西。 1)将类名的第一个字母大写! (学生)

2)注意类变量是私有的(在这里查看教程Java Class Accessibility)并使用getter和setter来控制类外的访问。

3)我不说“getName()”并返回姓名和年龄。这没有意义。相反,当你去toString()时,它会显示所有相关信息。

4)Java是一种面向对象的语言,这意味着模拟数据的类(在某种程度上)可以根据它们在现实生活中的使用方式进行适当的模型化。这使得阅读代码的人更直观。

5)如果您的Group类(注意大写!)需要包含许多学生使用LIST,例如ArrayList。数组是没有意义的,因为你不知道每个组中有多少学生。我上面使用的SET类似于列表,但只允许每个项目中的一个。为简单起见,使用列表

6)THIS运算符引用类(对象)变量。在构造函数中,this.firstName引用Class中的firstName(对象...类的实例),而firstName将引用构造函数中的变量而不更改类变量。

答案 1 :(得分:0)

使用

的构造函数
     class group {
    String fname,lname;

     group(String fname ){
    this.fname=fname;
    }
    group(String fname,String lname){
    this.fname=fname;
    this.lname=lname;

    }
    group(String fname,String lname,int age){
    this.fname=fname;
    this.lname=lname;
    this.age=age;
    }

  public  String getName(){

return fname+lname+age;    
}
    }