java:从扫描器输入获取对象名

java:从扫描器输入获取对象名,java,oop,object,Java,Oop,Object,我通过互联网上的书籍和视频自学Java。 我知道下面的代码是错误的,但是我怎样才能从这样的变量中读取对象名呢 public static void main(String[] args) { Scanner input =new Scanner (System.in); String ObjectName=input.next(); className ObjectName=new className (); ᴋᴇʏsᴇʀ,Pshemo,Brian Vanover我编

我通过互联网上的书籍和视频自学Java。 我知道下面的代码是错误的,但是我怎样才能从这样的变量中读取对象名呢

 public static void main(String[] args) {

   Scanner input =new Scanner (System.in);

   String ObjectName=input.next();

   className ObjectName=new className ();
ᴋᴇʏsᴇʀ,Pshemo,Brian Vanover我编辑我的问题

我有一个名为BankAccount的类和另一个带有此代码的主类

 public static void main(String[] args) {

   Scanner input =new Scanner (System.in);

  System.out.println("Please Enter ID"); 
  int id=input.nextInt();
  System.out.println("Please Enter Name"); 
  String name = input.next();
  System.out.println("Please Enter Balance"); 
  double balance = input.nextDouble();

String client=input.next();
BankAccount client = new BankAccount (id,name,balance);// i know this code line is worng 

 client.printStatement();

若您询问如何仅基于类名创建类的实例,那个么您可以尝试使用

Scanner input =new Scanner (System.in);
String className = input.nextLine();
Class<?> clazz = Class.forName(className);
Object o = clazz.newInstance();
稍后,您可以使用
map获取客户的帐户。获取
并获取帐户详细信息,如

map.get(client).getID();//assuming that you have getter for ID

若您询问如何仅基于类名创建类的实例,那个么您可以尝试使用

Scanner input =new Scanner (System.in);
String className = input.nextLine();
Class<?> clazz = Class.forName(className);
Object o = clazz.newInstance();
稍后,您可以使用
map获取客户的帐户。获取
并获取帐户详细信息,如

map.get(client).getID();//assuming that you have getter for ID

这可以通过使用
enum
if logic
if logic will ok来处理,如果您期望有限数量的可能输入:

public static void main(String[] args) {
  Scanner input =new Scanner (System.in);
  String objectName = input.next();

  if (ObjectName.equals("obj1")) {
    Obj1 myObject = new Obj1();
  } else {
    Obj2 myObject = new Obj2();
  }

这可以通过使用
enum
if logic
if logic will ok来处理,如果您期望有限数量的可能输入:

public static void main(String[] args) {
  Scanner input =new Scanner (System.in);
  String objectName = input.next();

  if (ObjectName.equals("obj1")) {
    Obj1 myObject = new Obj1();
  } else {
    Obj2 myObject = new Obj2();
  }

第一个文件名Out.java和第二个文件名in.java //第一个文件的代码从这里开始

public class Out {

public static void main(String[] args) {


    in inObject =new in();
    inObject.ikl();

}



}

//second file's code start here
 import java.util.Scanner;

          public class in {

        public static int ikl() {

    Scanner input=new Scanner(System.in);

    int j=input.nextInt();
    System.out.println(j);

    return j;
}

   }

第一个文件名Out.java和第二个文件名in.java //第一个文件的代码从这里开始

public class Out {

public static void main(String[] args) {


    in inObject =new in();
    inObject.ikl();

}



}

//second file's code start here
 import java.util.Scanner;

          public class in {

        public static int ikl() {

    Scanner input=new Scanner(System.in);

    int j=input.nextInt();
    System.out.println(j);

    return j;
}

   }

也许可以按你的要求去做,但程序员通常不是这样做的。为什么要扫描变量名?既然你是个初学者,我猜这很可能不是你想要的?你有什么错误?另外,如果您已经使用了
客户机
作为字符串引用的名称,为什么还要尝试命名
银行帐户
客户机呢?也许可以按照您的要求进行命名,但程序员通常不是这样做的。为什么要扫描变量名?既然你是个初学者,我猜这很可能不是你想要的?你有什么错误?另外,如果您已经使用
客户机
作为字符串引用的名称,为什么还要尝试命名
银行帐户
客户机?您好!看起来你的帖子根本没有回答这个问题,它看起来像是一些使用
扫描仪
而不获取对象名称的示例代码;代码似乎与问题中的问题代码非常相似。您好!看起来你的帖子根本没有回答这个问题,它看起来像是一些使用
扫描仪
而不获取对象名称的示例代码;代码似乎与问题中的问题代码非常相似。