令牌“;”上的语法错误,{ 应在此令牌之后

新手上路,请多包涵

为什么这一行有语法错误(如下所示)

 package org.temp2.cod1;
import java.security.*;
import javax.crypto.*;
import javax.crypto.spec.*;
import java.io.*;

public class Code1 {

    byte[] plaintext = new byte[32];   // <<<<<<<<<<<<<<<<<<<<<<<<<< syntax error
    for (int i = 0; i < 32; i++) {
      plaintext[i] = (byte) (i % 16);
    }

    byte[] key = new byte[16];
    SecureRandom r = new SecureRandom();
    r.nextBytes(key);

    Cipher c = Cipher.getInstance("AES");
    SecretKeySpec k =  new SecretKeySpec(key, "AES");
    c.init(Cipher.ENCRYPT_MODE, k);
    byte[] encryptedData = c.doFinal(plaintext);
}
}

原文由 silverkid 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 452
2 个回答

您忘记了入口点方法声明。尝试添加:

 public static void main(String[] args) {

在出现错误的行之前。

原文由 Emil H 发布,翻译遵循 CC BY-SA 2.5 许可协议

你的代码应该在一个方法中。在我看来,您已经跳过了 public void method(..) {

原文由 Bozho 发布,翻译遵循 CC BY-SA 2.5 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题