java - 如何将变量传递给不同的方法

标签 java

如何将 tom.name、id age 和 year 变量从 main 方法传递到“tomdetails”方法,以便该方法可以识别它们?

class Student {
    int id;
    int age;
    int year;
    String name;
}

class Staff {
    int id;
    int age;
    String name;
    String postcode;
    String department;
}

public class Main {

    public static void main(String[] args) {
        //Database
        //Students
        Student tom = new Student();
        tom.name = "Tom";
        tom.id = 1;
        tom.age = 15;
        tom.year = 10;

       }

    private static void tom_details() {
        System.out.println(tom.name);
        System.out.println(tom.id);
        System.out.println(tom.age);
        System.out.println(tom.year);
    }
}

最佳答案

虽然您可以单独传递变量,但传递对整个Student 对象的引用可能更有意义。例如:

public static void main(String[] args) {
    Student tom = new Student();
    tom.name = "Tom";
    tom.id = 1;
    tom.age = 15;
    tom.year = 10;
    printDetails(tom);
}

private static void printDetails(Student student) {
    System.out.println(student.name);
    System.out.println(student.id);
    System.out.println(student.age);
    System.out.println(student.year);
}

在那之后我要采取的下一步是:

  • Student 一个接受姓名、ID、年龄和年份的构造函数
  • Student 中的所有字段设为私有(private)(并且可能是最终的),而不是通过方法(例如 getName())公开数据<
  • 可能在 Student 中添加一个 printDetails() 方法,这样您就可以在 main 中调用 tom.printDetails() 方法。

关于java - 如何将变量传递给不同的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58354574/

相关文章:

java - 如何从文本框中自动更新字符串(在 JLabel 中)?

java - 添加新成员变量后反序列化旧对象: Java

java - 获取 IntelliJ 中打开的项目中所有 PsiFiles/VirtualFiles 的列表

java - 旅游应用获取数据的好方法是什么

java - 如何创建 DTD 并将其集成到 JAR 文件中..?

java - 如何在测试范围内使用 m2e (Eclipse/Maven) 运行具有测试依赖项的命令行程序?

JavaBeans:属性和特性之间有什么区别?

java - Compat 前/后缀是否必须在 xml 和代码中的任何地方使用?

java - 在 Spring boot 应用程序中更新一行

java - 使用java列出cloudant中存储的所有附件