java - 我如何将 "import"java 文件转换为另一个文件

标签 java netbeans-8

我的程序目前遇到问题,我想做的是将包含我的变量的文件“导入”到我的主 Java 文件中,以便它识别变量而不将它们添加到主文件中.

我创建了一个名为Variables的.java文件,这段代码在里面:

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package destinytextgame;

import java.util.Scanner;

/**
 *
 * @author 30136246
 */
public class Variables {

    Scanner input = new Scanner(System.in);

    String first_name;
    int age;

}

我想要做的是能够使我用来编写程序的主 Java 文件识别 Variables.java 文件中的代码。当我在没有任何附加代码的情况下尝试它时,它不断弹出错误,指出first_name 未定义。有人可以帮忙吗?

最佳答案

您可能想尝试的一些事情:

如果您只需要变量的一个实例,请将变量设置为public static

实例化变量类Variables vars = new Variables();,然后从实例中调用变量vars.first_name = "First Name";

如果您使用实例方法,那么我建议使用 Getters and Setters

This还可以帮助您理解如何更好地获取类变量。

以静态方式进行:

    public class Main {

    public static void main(String[] args){
        Variables.first_name = "Hello, you.";
        System.out.println("first_name: " + Variables.first_name);
    }

    private static class Variables {

        private static Scanner input = new Scanner(System.in);

        public static String first_name;
        public static int age;
    }
}

以 OOP 方式进行操作:

    public class Main {

    public static void main(String[] args) {
        Variables var = new Variables();

        var.setFirst_name("First Name Here");
        System.out.println(var.getFirst_name());
    }

    private static class Variables {

        private Scanner input = new Scanner(System.in);

        public String first_name;
        public int age;

        public String getFirst_name() {
            return first_name;
        }

        public void setFirst_name(String first_name) {
            this.first_name = first_name;
        }

        public int getAge() {
            return age;
        }

        public void setAge(int age) {
            this.age = age;
        }
    }
}

关于java - 我如何将 "import"java 文件转换为另一个文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32947879/

相关文章:

java - 如何使用java中的命令索引获取文件名

java - 没有 JSF 的 Facelets

java - 错误的 wsimport 命令行调用

java - 我们如何使用类似于 Intellij 的 Netbeans 来查找重复代码?

java - Netbeans、Gradle 和 Jogl,崩溃

java - LIferay 中的 Portlet 未保存到数据库会引发 InvocableTargetException

java - Firestore - 如何从 DocumentSnapshot 中获取集合?

java - 如何使用 selenium webdriver 避免隐藏类

java - NetBeans IDE 8.0.2 输出窗口

java - 基于用户的九九乘法表