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

不能从静态内容引用非静态变量jTextArea重复]

单于俊智
2023-03-14

我试图在jTextArea中显示分析文本的结果,我正在通过Netbeans编写这个程序。下面是我试图修复的代码,以便在jTextArea3中显示结果,但其显示的非静态变量不能从静态内容错误中引用。因为在Netbeans中,jTextArea代码将自动生成,所以我无法更改任何内容。请帮帮我

    public static void main(String[] args) throws NetworkException, AnalysisException {

       File textSRC = new File("MyText.txt");
       String myTextCount = null;
       BufferedReader myTextBr = null;
       String check = "";
       try {
       String myTextCurrentLine;
       myTextBr = new BufferedReader(new FileReader(textSRC));
       while ((myTextCurrentLine = myTextBr.readLine()) != null) {
           myTextCount = myTextCount + " " + myTextCurrentLine;
       }       
       // Sample request, showcasing a couple of TextRazor features
       String API_KEY = "7d5066bec76cb47f4eb4e557c60e9b979f9a748aacbdc5a44ef9375a";

       TextRazor client = new TextRazor(API_KEY);       
       client.addExtractor("words");
       client.addExtractor("entities");
       client.addExtractor("entailments");
       client.addExtractor("senses");
       client.addExtractor("entity_companies");              
       String rules = "entity_companies(CompanyEntity) :- entity_type(CompanyEntity, Company').";        
       client.setRules(rules);                       
       AnalyzedText response = client.analyze(myTextCount);                    
       File file = new File("Hello1.txt");
       // creates the file
       file.createNewFile();
       // creates a FileWriter Object
       FileWriter writer = new FileWriter(file); 
       // Writes the content to the file

       for (Sentence sentence : response.getResponse().getSentences()) {
           for (Word word : sentence.getWords()) {
            System.out.println("----------------");
               System.out.println("Word: " + word.getLemma());

               for (Entity entity : word.getEntities()) {
                   ///System.out.println("Matched Entity: " + entity.getEntityId());
               }                  
               for (Sense sense: word.getSenses()) {
                   //System.out.println("Word sense: " + sense.getSynset() + " has score: "    + sense.getScore());
               }                
           }
       }

                   // Use a custom rule to match 'Company' type entities                       
       for (Custom custom : response.getResponse().getCustomAnnotations()) {
           for (Custom.BoundVariable variable : custom.getContents()) {
               if (null != variable.getEntityValue()) {
                   for (Entity entity : variable.getEntityValue()) {
                       String CompanyFound = ("Variable: " + variable.getKey() +"\n"+    "Value:" + entity.getEntityId());
                       System.out.println(CompanyFound);
                       jTextArea3.append(CompanyFound);
                       writer.write(CompanyFound); 
                       writer.flush();
                       writer.close();
                   }
               }
           }
       }  
    }catch (IOException ex) {
    }           
   }

共有1个答案

翁和正
2023-03-14

你的错误很清楚,在静态上下文中,你不能引用非静态的东西。因为静态属于类级别,你不能在没有任何实例的情况下使用实例级别的东西。为此,您必须实例化一个对象才能使用它。

示例:

public class Test{

private JTextArea textArea;


public static void someMethod(){
    //textArea = new JTextArea(); you can't do this
     //you need an instance
     Test test = new Test();
     test.textArea = new JTextArea(10,10);
     test.textArea.setText("Hello world");

}
}
 类似资料:
  • 我最近开始用Java编码,我有一个关于轮盘赌/挖掘游戏(终端)的问题。 每次尝试使用“bank.amount”购买特定商品时,都会出现以下错误: 这是我的shop.java文件 如果你需要更多的代码(例如,我的主类或银行类),请随时问我!

  • 我正在尝试调用一个位于类的片段中的方法。现在我得到一个错误:非静态方法checkWriteStoragePermission()不能从静态内容引用。我真的没主意了。我搜索了两天没有任何结果。 我试图在其中调用方法的类: Fragment类中的方法: 我怎么能轻松搞定这个?因为我无法将其转换为静态方法。 亲切的问候,

  • 我是Android编码的n00b,今天我想尝试使用定位服务。 我设置了一个简单的类和一个简单的main,只是为了得到经度和纬度。 但当我尝试调用retrive的构造时,long and latitude Android Studio弹出了一个错误: 错误:(33,16)错误:无法从静态上下文引用非静态变量纬度 这是我的位置班

  • 我编写了以下测试代码: 但会出现以下错误: 我如何让我的方法识别我的类变量?

  • 我试图从main方法中的类调用方法,但我一直得到这样的错误:我不能从静态上下文调用非静态变量。 多谢了。

  • 我知道这个问题已经被问了很多很多次,我也读过很多答案,但是我不知道如何解决我的问题。以下是我的代码: 我最初确实通过更改来解决此问题: 到 虽然这确实有效,但我觉得这不是一个好方法。我读过一些关于实例变量的内容,但我不知道如何做到这一点。 谢谢