2017-09-26 55 views
-1

这里是我的任务如何创建中getAllNames将在另一个类

you need to create array of users and print there names.

然后,你需要创建一个多类UsersStorage与所有用户名返回字符串,将上述用户的阵列这一类提到的,所以你会保持这个数组在课堂内。

来实现这种类方法getFirstUserName,将返回第一用户和中getAllNames将与所有用户名返回字符串。

和我的代码

package com.company; 

public class Lesson4OOP { 
    public static void main(String[] args) { 
     String[] names = {"Adam","Sara", "Mike" , "David"}; 
     int[] ages = {21, 25, 34, 16}; 
     UserStorage[] users = new UserStorage[names.length]; 
     for(int i = 0; i<users.length; i++){ 
      UserStorage u = new UserStorage(); 
      u.setName(names[i]); 
      users[i] = u; 
      u.setAllNames(names); 
     } 
     System.out.println(); 

     for(int j = 0; j<ages.length; j++){ 
      users[j].setAge(ages[j]); 
     } 
     System.out.print(users[2].getName()); 
     System.out.println(" is " + users[3].getAge() + " years old"); 
     System.out.print(names.getAllNames()); 

    } 
} 


    package com.company; 

public class UserStorage { 
    String nam; 
    int ages; 
    static String[] names = {"Adam","Sara", "Mike" , "David"}; 
    String separator = ""; 

    public void setName(String val){ 
     nam = val; 
    } 
    public String getName(){ 
     return nam; 
    } 
    public void setAge(int num){ 
     ages = num; 
    } 
    public int getAge(){ 
     return ages; 
    } 
    public static void setAllNames(String[] getN){ 
     names = getN; 
    } 
    public String[] getAllNames(){ 
     for (int i = 0; i<names.length; i++){ 
      System.out.print(separator + names[i]); 
      separator = ", "; 
     } 
     return names; 
    } 
} 

哪里出错?由于输出是 错误:(21,31)的java:找不到符号 符号:法中getAllNames() 位置:类型的变量名java.lang.String中[]

+1

您呼叫'在字符串数组名names.getAllNames()',而不是UserStorage – Optional

回答

0

如果你想调用的方法类不是静态的,创建一个类的实例和访问方法。第二点是代码是不正确的方法,你应该怎么写面向对象的代码。

UserStorage u = new UserStorage(); 
u.getAllNames(); 

Link供您参考

相关问题