Java 使用用户输入的对象编号创建对象

Java 使用用户输入的对象编号创建对象,java,arrays,class,object,Java,Arrays,Class,Object,我是java的新用户。作为编程练习,我必须制作一个程序,询问用户想要创建多少对象,然后创建它们。类还调用打印已创建对象数量的类方法。也 编写创建对象的类。类必须能够跟踪所创建对象的数量。类还需要打印对象数量的方法。检查已完成的类以获取类和方法的名称 我已经试过了,但还没有达到任何地方,所以我期待着一些帮助:请帮助 import java.util.Scanner; public class NumberOfObjects{ public static void main(String a

我是java的新用户。作为编程练习,我必须制作一个程序,询问用户想要创建多少对象,然后创建它们。类还调用打印已创建对象数量的类方法。也 编写创建对象的类。类必须能够跟踪所创建对象的数量。类还需要打印对象数量的方法。检查已完成的类以获取类和方法的名称

我已经试过了,但还没有达到任何地方,所以我期待着一些帮助:请帮助

import java.util.Scanner;

public class NumberOfObjects{
   public static void main(String args[]) {

       System.out.print("How many objects do you want to create:");
       Scanner reader = new Scanner(System.in);
       int amount = reader.nextInt();

       Thing[] things = new Thing[amount];

       for(int i = 0; i<amount; i++) {
           things[i] = new Thing();
       }

       Thing.numberOfObjects();
   }
   class Thing{
       int count;

       public void numberOfObjects(){
           System.out.println(count);

       }


   }
}
import java.util.Scanner;
公共类NumberOfObjects{
公共静态void main(字符串参数[]){
System.out.print(“要创建多少对象:”);
扫描仪阅读器=新扫描仪(System.in);
int amount=reader.nextInt();
事物[]事物=新事物[数量];
对于(int i=0;i你忘记了三件事:

1-在创建对象时增加对象的计数。您可以在Thing构造函数中执行此操作

2-将count变量声明为static,以允许Thing类型的所有对象共享该变量

3-声明numberOfObjects方法为静态,因为它是通过Thing类访问的类方法

试试这个:

import java.util.Scanner;

public class NumberOfObjects{
public static void main(String args[]) {

   System.out.print("How many objects do you want to create:");
   Scanner reader = new Scanner(System.in);
   int amount = reader.nextInt();

   Thing[] things = new Thing[amount];

   for(int i = 0; i<amount; i++) {
       things[i] = new Thing();
   }

   Thing.numberOfObjects();
   }
   class Thing{
   private static int count = 0;

   public Thing(){
   count++;
   }
   public static void numberOfObjects(){
       System.out.println(count);

   }


   }
}
import java.util.Scanner;
公共类NumberOfObjects{
公共静态void main(字符串参数[]){
System.out.print(“要创建多少对象:”);
扫描仪阅读器=新扫描仪(System.in);
int amount=reader.nextInt();
事物[]事物=新事物[数量];
对于(int i=0;i
类框
{
//跟踪所有对象
事物[]对象;
int光标;
公用框(对象的整数计数)
{
objs=新事物[对象数];
}
//将新对象添加到数组中
公共无效添加(对象)
{
objs[cursor++]=对象
}
//获取对象
公共物品获取(int pos)
{
如果(pos<0 | | pos>=objs.lenght())
投掷;
返回objs[pos];
}
//清点物品
public int numberOfObjects()
{
System.out.println(objs.lenght());
返回objs.lenght();
}
}
}
类事物
{
//需要存储的任何字段
}
你的主屏幕应该是这样的

 public static void main(String args[]) {

   System.out.print("How many objects do you want to create:");
   Scanner reader = new Scanner(System.in);
   int amount = reader.nextInt();

   Box box = new Box(amount);

   for(int i = 0; i<amount; i++) {
       box.Add(new Thing());
   }

   box.numberOfObjects();
}
publicstaticvoidmain(字符串参数[]){
System.out.print(“要创建多少对象:”);
扫描仪阅读器=新扫描仪(System.in);
int amount=reader.nextInt();
盒子=新盒子(金额);

对于(int i=0;i将count声明为静态,并在构造函数中添加count。另一个导入对象,将thing类移出NumberOfObjects类,否则,thing类是一个内部类,您需要首先创建NumberOfObjects实例,并使用此对象创建thing实例

导入java.util.Scanner

公共类NumberOfObjects{

public static void main(String args[]) {
    System.out.print("How many objects do you want to create:");
    Scanner reader = new Scanner(System.in);
    int amount = reader.nextInt();

    Thing[] things = new Thing[amount];
    for(int i = 0; i<amount; i++) {
        things[i] = new Thing();
    }
    Thing.numberOfObjects();
}

从一个main函数开始,该函数按正确的顺序执行您想要的所有操作,然后编写实现main()所需功能的类、方法和函数。
public static void main(String args[]) {
    System.out.print("How many objects do you want to create:");
    Scanner reader = new Scanner(System.in);
    int amount = reader.nextInt();

    Thing[] things = new Thing[amount];
    for(int i = 0; i<amount; i++) {
        things[i] = new Thing();
    }
    Thing.numberOfObjects();
}
class Thing{
    private static int count ;
    public Thing(){
        count++;
    }
    public static void numberOfObjects(){
        System.out.println(count);
    }
}