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

正在获取类名

袁泰
2023-03-14

我正在编写一个administrator类,我正在编写的所有其他类都要从它继承。在本例中,我希望类继承一个main方法,并且我还计划实现一个html" target="_blank">工厂。我必须编写一些sysouts,其中包括各种类名,如charcount、linecount等等。为此,我需要能够获得当前的类名,因为这个方法将被多个类继承。在Java中有没有办法做到这一点?您可以在下面找到我要做的sysout示例:

System.out.println("Usage: className <src>\n"); 

提前谢谢大家,任何帮助都不胜感激!

非常抱歉,我之前不清楚,我将在下面展示整个代码,并尝试进一步解释我的想法。所以我所做的本质上是做一个主方法,检查一个文件是否存在,如果文件存在,它会尝试执行某个函数(这一切都将在命令行中)。我正在练习工厂设计模式(这是我以前从未做过的事情)。我将使用main方法的execute部分调用某个工厂(尚未创建)来创建administrator的子类的对象,并返回诸如文件中的charcount和文件中的linecount之类的东西。上面的问题指的是这个主要方法的一个部分,它将打印子类的用法。例如,我将从administrator继承charcount,因为检查文件的过程和在administrator的main方法中,但是当我打印usage消息时,我不希望它打印“usage:administrator”,而是“usage:charcount”。我希望这能澄清问题,再次抱歉我上面解释得太差,您可以在下面找到我所拥有的代码:

public class Administrator 
{
    
    private static File srcFile = null; 
    private static String srcFilename = "<srcFilename>"; 
    
    
    public static void main(String[] args) throws IOException
    {    
         
        
        //check the command line 
        if(args.length != 1) 
        { 
            System.out.println("Usage: charcount <src>\n"); 
            return;
        } 
        
        // Check if arguments are valid, if the srcFile exists, and if can create the dstFile.
        if (args[0] != null)
        { 
            //check <src> 
            srcFilename = args[0]; 
            System.out.println( ": srcFilename '" + srcFilename + "'"); 
            srcFile = new File(srcFilename); 
            if(!srcFile.canRead()) 
            { 
                System.out.println("charcount: cannot open srcFile '" + srcFilename + "'"); 
                return;
            }
        } 
        else 
        { 
            System.out.println("charcount: [OK] srcFilename = '" + srcFilename + "'"); 
            
        }  
    } 
    
    public static int execute() {return 0;}
    
}

共有1个答案

颜河
2023-03-14

类有一些有用的方法。您可以使用getClass().getSimplename()。在运行时,此方法根据对象的类型调用。

 类似资料:
  • 为什么在上面的程序中我得到InvalidClassException? 线程“main”java.io.InvalidClassException中的异常:SerializationExamples.ac;java.base/java.io.ObjectStreamClass$ExceptionInfo.NewInvalidClassException(ObjectStreamClass.java

  • 我创建了一个简单的REST服务(POST)。但是当我从postman@RequestBody调用这个服务时,它没有收到任何值。 我的java Bean对象如下: System.out.println将null打印为PolcyNumber的值。 请帮我解决这个问题。 我在请求体中传递的JSON是 我甚至在postman中设置了到

  • 有一个JPQL查询,它列出类别名称、项目名称等,如下所示。 我想按类分组,并在select语句中获取类。这可能吗?

  • 我正在获取O并且从未进行成功的Hibernate连接测试,在学习了本教程“JasperReports with hibernate-module1”和JasperReports with hibernate-module2之后,弹出一个错误,说“Could not parse mapping document from resource com/report/mappings/department

  • 不知道在Android房间查询中使用表名时,如何避免硬编码?我用开发,但老实说,在这个问题上,Java还是kotlin并不重要。 让我们看看简单的类: DAO接口: 实体类: 您可以看到表名“user”是在userDAO中的@query中硬编码的。如何避免呢?如何引用@Entity参数TableName? 我想有所有的名字在一个而且只有一个地方。