当前位置: 首页 > 知识库问答 >
问题:

对象数组和在java中创建对象

裴畅
2023-03-14

我需要创建一个对象(银行),其中包含一组客户端和bankID。我的问题是,我不知道如何在主函数中创建银行。

银行类别:

public class Bank {
   Client[] client=new Client[20];
   String idBank;

   public Bank(Client[] client,String idBank) {
      this.client=client;
      this.idBank=idBank;
   }

   public Bank(Bank b) {
      b.client=client;
      b.idBank=idBank;
   }

客户端类:

public class Client {
   String name;
   String address;
   BancAccount[] banc=new BancAccount[50];

   public Client(String name,String address,BancAccount[] banc) {
      this.name=name;
      this.address=address;
      this.banc=banc;
   }

   public Client(Client c) {
      c.address=address;
      c.name=name;
      c.banc=banc;
   }
}

主要类别:

public class Lab5 {
   public static void main(String[] args) {
      Bank[] b1=new Bank(client[3],"14332");
   }
}

这些是问题所在:

你必须创建一个程序来模拟银行活动。该系统包括以下模块:银行—客户(客户数组)— idBank(字符串)5 BancAccount — accountNumber(字符串)—金额(浮点)客户—姓名(字符串)—地址(字符串)—账户(银行账户数组;一个客户至少可以有一个账户,但不能超过五个账户)

共有1个答案

汪明德
2023-03-14

让我们看看您在做什么(除去错误的< code>[]):

Bank b1 =new Bank(3,"14332"); //works, but BAD

现在,这不是很漂亮,是吗?让我们谈谈您的Bank类。具体来说,这部分:

Client[] client=new Client[20];
public Bank(Client[] client,String idBank)
{
   this.client=client;
   this.idBank=idBank;
}

Clients数组相反,传入3没有多大意义。您这样声明Client数组也很奇怪:

Client[] client=new Client[20];

但是,在调用 Bank 构造函数时,您将强制将数组重新分配给其他位置。让我们添加另一个构造函数:

public Bank(int numClients,String idBank)
{
   client = new Client[numClients];
   this.idBank=idBank;
}

可能还有一个< code>addClient(Client c)方法,它将强制执行最大客户端大小,还有一个变量来跟踪数组中的当前索引(本质上使它的行为类似于< code>ArrayList):

private int index = 0;
public void addClient(Client c) {
   if(index == client.length)
      return; //or throw an Exception, your choice here.
   client[index] = c;
   index++;
}

现在,如果你想保持所有类都一样,那么你也可以在main()中做这样的事情:

Client[] clients = new Client[20]; //or whatever number of Clients is appropriate
//Code to instantiate Clients, whatever that may be
Bank = new Bank(new Client[]{}, "14332");
 类似资料:
  • 我试图创建一个由子类定义的对象数组(我认为这是正确的术语)。我可以看到这个问题反复出现,但实现仍然存在问题。 我的代码 给出错误 线程“main”java.lang.NullPointerException中出现异常。 为了使其合理化,我将其分解为最简单的术语: 这似乎奏效了。我只是看不出我的两个例子有什么不同。我知道我的第一个没有意义,但是MyClass最终会包含更多的数据。) 我很肯定这个问题

  • 问题内容: 我是Java的新手,当时我用Java创建了一系列对象。 例如,我有A类 但这只是创建指向A的指针(引用),而不是4个对象。它是否正确?我看到当我尝试访问创建的对象中的函数/变量时,出现空指针异常。为了能够操作/访问对象,我必须这样做 这是正确的还是我做错了什么?如果这是正确的,那真的很奇怪。 编辑:我觉得这很奇怪,因为在C ++中,你只是说新的A [4],它创建了四个对象。 问题答案:

  • 我有两个数组:和。 数组中的示例值:。 数组中的值示例:。 我需要创建一个JavaScript对象,将数组中的所有项放在同一个对象中。例如

  • 问题内容: 如何在Android中以这种格式创建JSON:由于我将传递的API将解析JsonArray,然后解析该对象。还是只传递一个json对象就可以了吗?因为我只需要在每个服务调用中插入1个事务即可。 我所知道的只是JSONObject。像这个。 有任何想法吗。谢谢 问题答案: 使用以下代码:

  • 问题内容: 我有一个需要将对象数组存储在变量中的要求。对象是不同类型的。请参考以下示例: 注意第二个元素是字符串本身的数组。经过研究,我想将其存储为以下接口类型: 尽管如此,我还是遇到了一些无法找到的编译错误。 问题答案: 您要的是可能的- 游乐场链接: 但是您可能不想这样做。您正在与类型系统进行斗争,如果您这样做,我会质疑您为什么要使用Go。考虑利用类型系统- 游乐场链接:

  • 问题内容: 我一直试图创建一个包含两个值的类的数组,但是当我尝试将值应用于该数组时,我得到了。 为什么会出现此异常,我该如何解决? 问题答案: 你创建了数组,但未在其中放置任何内容,因此你有一个包含5个元素的数组,所有元素均为null。你可以添加 在设置的行之前。