首页 > 解决方案 > 使用 Main 执行类

问题描述

对编码很陌生,对 Java 也很陌生。我正在尝试制作一个文本加密器,它接受文本并以十六进制将其吐出。我有一个 textScanner.java 扫描控制台输入的文本,以及一个将扫描文本转换为十六进制的 ecryptor.java。我如何让这两个在我的 Main.java 中一起工作?

尝试制作没有运气的构造函数

/*Main.java*/
import java.io.UnsupportedEncodingException;
import java.util.Scanner;
import javax.xml.bind.DatatypeConverter;

public class Main
{
  public static void main (String[]args)
  {
   /*what should i put in here*/
  }
}

/*encryptor.java*/
import java.io.UnsupportedEncodingException;
import java.util.Scanner;
import javax.xml.bind.DatatypeConverter;

public class encryptor
{
  public static String toHexadecimal (String text) throws UnsupportedEncodingException
  {
    byte[]myBytes = text.getBytes ("UTF-8");
    System.out.println(toHexadecimal (textScanner.scanner()));
    return DatatypeConverter.printHexBinary (myBytes);
  }
}

/*textScanner.java*/
import java.io.UnsupportedEncodingException;
import java.util.Scanner;
import javax.xml.bind.DatatypeConverter;

public class textScanner
{
  public static String scanner () throws UnsupportedEncodingException
  {
     Scanner scanA = new Scanner (System.in);
      System.out.println ("Please enter the text to be encrypted");
      String plainText = scanA.next ();
      scanA.close();
      return plainText;
  }
}

输入:早安stackoverflow

输出:20 67 6f 6f 64 6d 6f 72 6e 69 6e 67 20 73 74 61 63 6b 6f 76 65 72 66 6c 6f 77

标签: java

解决方案


由于您使用的是静态方法,因此您不需要构造任何对象。

public static void main (String[]args)
{
  String plainText = textScanner.scanner();
  encryptor.toHexadecimal(plainText);
}

推荐阅读