【问题标题】:How to invoke a method with objects as parameters?如何调用以对象为参数的方法?
【发布时间】:2016-02-29 10:29:50
【问题描述】:

我不理解将对象作为参数传递的概念。下面是一个例子。我的问题是如何调用我的 PrintTime 方法?如果我的理解是正确的:第一个方法(Time)是一个没有参数的构造函数,但 PrintTime 是一个以对象为参数的方法。如何调用它?

public class Time {

int hour, minute;
double second;

public Time() {
this.hour= 0;
this.minute= 0;
this.second= 0.0;
}

public static void printTime(Time t){
    System.out.println(t.hour+ ":"+ t.minute+ ":"+ t.second);
}

public static void main(String[] args) {
    Time t1 = new Time();
    t1.hour= 11;
    t1.minute= 8;
    t1.second= 3.14159;
    System.out.println(t1);
}

}

【问题讨论】:

    标签: java object parameter-passing


    【解决方案1】:

    在您的主要方法中,您可以调用printTime(t1); printTime 方法中的参数 t 是对您将传递给该方法的 Time 对象的引用。

    【讨论】:

      【解决方案2】:

      是的,public Time() { 是一个构造函数,并且

      public static void printTime(Time t){

      是一个方法,要调用这个方法(你已经定义了静态的)你需要做的:

      public static void main(String[] args) {
          Time t1 = new Time();
          t1.hour= 11;
          t1.minute= 8;
          t1.second= 3.14159;
          Time.printTime(t1);   /// <--< here  
      
      }
      

      【讨论】:

      • 谢谢!只是一个小错误。应该是:Time.printTime(t1);
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-04
      • 2020-12-20
      相关资源
      最近更新 更多