java - Java 中调用方法的区别?

标签 java object method-call

我只是想澄清一下,以两种形式调用函数

  1. 通过创建一个对象并使用该对象调用方法。
  2. 无需创建调用该函数的对象。

我的意思是,例如我有一个类似的类(class)

Class A{
  public int callMethod(){
     return 2;
  }
}

现在我正在创建另一个类来调用 A 类中定义的方法 callMethod

Class B {
  public static void main(String[] args) throws ParseException {

      A a = new A();
      //1st form to call the method
      int aa = a.callMethod()
      System.out.println(aa);

      //2nd form to call the method
      aa = new A().callMethod();
      System.out.println(aa);
  }
}

在创建对象后的第一个语句中,我使用 A 的类对象调用 A 类的 callMethod() 。第二次我直接调用该方法,而不创建对象类 A 。第一种形式调用该方法,可以肯定我们正在创建对象并为该对象占用内存中的一些空间。那么第二种形式调用该方法呢?需要创建任何对象吗?哪一个更快?谁能给我澄清一下。

最佳答案

当您使用new关键字和构造函数(在本例中为new A())时,它正在创建一个新对象。

关于java - Java 中调用方法的区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24484037/

相关文章:

javascript - 在 Mongoose 中一次执行多个查询

JavaScript/Angular 1 - 测试对象是否已定义,如果为真则清空它

java - 在 Java (Android) 中缓冲远程方法调用

c# - 列表和数组的问题

java - Android 2.1 :Caused by: java. lang.ClassNotFoundException: fragment

java - 如何从响应对象中获取 myObject

java - Android - 如何将 ImageView 从一个 Activity 转移到另一个 Activity ?

java - Android 上的垂直抽屉

php - 将对象的对象转换为对象数组(PHP、Laravel)

java - 如何在 JSTL 中调用 java 方法?