首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

什么时候只使用方法名,什么时候调用方法?

在编程中,使用方法名和调用方法是根据具体的上下文和需求来决定的。

  1. 使用方法名: 当我们需要引用一个方法而不是调用它时,我们只使用方法名。这通常发生在以下情况下:
  • 方法作为参数传递给其他方法或函数时,我们只需提供方法名作为参数,而不需要立即调用它。
  • 当我们需要将方法存储在变量中或将其赋值给其他对象属性时,我们只需使用方法名。

例如,在JavaScript中,我们可以定义一个函数,并将其作为参数传递给另一个函数:

代码语言:txt
复制
function greet() {
  console.log("Hello!");
}

function sayHello(callback) {
  callback(); // 调用传递的方法
}

sayHello(greet); // 传递方法名而不是调用方法
  1. 调用方法: 当我们需要执行方法并获取其返回值时,我们需要调用方法。这通常发生在以下情况下:
  • 当我们需要使用方法的结果进行进一步的操作时,我们需要调用方法并将其返回值存储在变量中。
  • 当我们需要在程序的特定位置执行方法的逻辑时,我们需要调用方法。

例如,在Java中,我们可以创建一个方法来计算两个数字的和,并在需要时调用它:

代码语言:txt
复制
public class Calculator {
  public int add(int a, int b) {
    return a + b;
  }
}

public class Main {
  public static void main(String[] args) {
    Calculator calculator = new Calculator();
    int sum = calculator.add(5, 3); // 调用方法并获取返回值
    System.out.println("Sum: " + sum);
  }
}

总之,使用方法名和调用方法是根据我们对方法的需求来决定的。如果我们只需要引用方法而不需要立即执行它,我们使用方法名。如果我们需要执行方法并获取其结果,我们调用方法。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

什么时候调用layoutSubviews

如果你想强制更新布局,不要直接调用方法。你可以调用setNeedsLayout方法;如果你想立即数显你的views,你需要调用layoutIfNeeded方法。...比如,我们想更新子视图的位置的时候,可以通过调用layoutSubviews方法,既可以实现对子视图重新布局。...layoutSubviews以下情况会被调用 苹果官方文档已经强调,不能直接调用layoutSubviews对子视图进行重新布局。那么,layoutSubviews什么情况下会被调用呢?...我简单测试了一下,上面基本都会被调用。 注意: 当view的fram的值为0的时候,`addSubview`也不会调用`layoutSubviews`的。...layoutSubviews方法在对自雷视图进行布局的时候非常方便。可以自己动手,深入理解layoutSubviews的调用机制。

41610
  • Python中面向对象初始化方法什么时候调用?怎么设置初始值?

    ----二、初始化方法2.1创建对象时自动调用调用初始化方法在使用类()创建对象时,解释器会自动执行以下操作:1. 为对象在内存中分配空间-------》创建对象2....在Cat中增加__init__方法,验证该方法在创建对象时会被自动调用:class Cat: def __init__(self): print("这是一个初始化方法")# 使用类...()创建对象的时候,会自动调用初始化方法 __init__black = Cat()执行结果:图片2.2 在初始化方法内部定义属性在__init__方法内部使用self.属性 = 属性的初始值 就可以定义属性...= "黑黑" def eat(self): print("%s爱吃罐头" % self.name)# 使用类()创建对象的时候,会自动调用初始化方法 __init__black...在创建对象时,使用类(属性1,属性2...)调用上面代码中,如果你在创建一个对象,并调用eat(),依旧是黑黑爱吃罐头,这样name属性就被固定死了,就不能很灵活的被运用,所以要进行改造。

    95520

    dotnet C# 创建对象不调用构造函数方法

    有时我期望只是创建出对象,但是不要调用对象的构造方法,可以通过使用 FormatterServices 的 GetUninitializedObject 函数来实现创建对象不调用构造函数方法 这个 FormatterServices.GetUninitializedObject...方法大部分是用在做序列化使用的,然而在很多 IOC 容器,也都使用此方法来创建对象,而通过其他方法拿到构造函数 在 WPF 的 XAML 创建对象,也有用到此方法,详细请看 dotnet 读 WPF...,如果抛出了异常,但是此对象的 Dispose 需要被显式调用的问题。...Foo 对象的 Dispose 方法,将会因为拿不到对象而无法调用 解决此方法的做法就是通过创建对象而不调用构造的方法,先拿到对象然后再调用构造,如果构造出错,依然还可以调用对象的 Dispose...RuntimeHelpers 的 GetUninitializedObject 方法调用 FormatterServices.GetUninitializedObject 在逻辑上是等价的

    82530

    python调用父类方法的三种方式(super调用和父类调用

    子类调用父类的方法的三种方式:父类.方法名(self)super(子类,self).父类方法名()super().父类方法名注意:super()通过子类调用当前父类的方法,super默认会调用第一个父类的方法...(适用于单继承 或者只想使用第一个父类的方法) # 02 方式 适用于新式类 # 格式: super(子类类, self).父类方法名() # super(Prentice...也就是说,涉及到多继承时,在子类构造函数中,调用第一个父类构造方法的方式有以上两种,而调用其他父类构造方法的方式只能使用未绑定方法。...__init__(self, name)使用未绑定方法调用第一个父类的构造方法 #调用其他父类的构造方法,需要手动给self传值 Animal....但是调用Animal类的构造方法,只能使用未绑定方法

    1.1K20

    让Kaggle比赛第二获奖者告诉你:买下一个冰淇淋的最佳时间是什么时候

    JAPAN工作的数据科学家,了解他如何使用复杂的特征工程,Gradient boosted tree,和对于竞赛使用的F1评估指标建立的特殊模型,来获得第二的好成绩。...我在2015年KDD杯挑战赛中获得了第二,挑战的目标是预测学生在10天内退学的可能性。现在我是雅虎日本的数据科学家。 你是怎么开始参与Kaggle比赛的?...这个模型和用户有关 以下是模型流程图 回购预测模型使用XGBoost来创建六个不同的梯度增强树模型(每个GBDT使用不同的随机种子)。...下面的图表做了很好的解释: 我不是使用提供的训练集(“tr”),我也往回看了一格(所在单元格用黄色阴影表示)来收集更多的数据。...04 预测None 考虑None的一种方法是概率:(1 - 商品A)*(1 - 商品B)*... 但另一种方法是试图预测“无”的一个特例。

    1.7K80

    【Groovy】Groovy 方法调用 ( 使用 对象名.@成员 访问 Groovy 对象成员 )

    对象名.成员 访问该对象中的成员 , 其本质上是调用 Student 对象的 getter 和 setter 方法 ; // 实例化 Student 类 def student = new Student...() // 对 对象名.成员 赋值 , 相当于执行 setter 方法 student.name = "Jerry" student.age = 16 // 使用 对象名.成员 访问成员 , 相当于执行...getter 方法 println student.name println student.age 如果不想调用 getter 和 setter 方法 , 可以使用 对象名....使用 对象名.成员 访问对象成员 // 对 对象名.成员 赋值 , 相当于执行 setter 方法 student.name = "Jerry" student.age = 16 // 使用...成员' 访问对象成员 // 对 对象名.'成员' 赋值 , 相当于执行 setter 方法 student.'name' = "Han" student.'

    78530

    不同程序集,名称空间类方法签名都一样的方法,如何调用

    有时候,你可能会遇到这样的问题,不同程序集,名称空间类方法签名都一样的方法,如何调用。本文将介绍如何通过别名的方式来解决这个问题。...TargetFramework> Example 然后,我们在两个程序集中都创建一个类,类也一样...dotnet add ConsoleAppShi reference ClassLibrary2 然后,我们在控制台应用中调用这两个程序集中的 Where 方法: using Example; var...ClassLibrary2 然后,我们在控制台应用中调用这两个程序集中的...总结 通过别名的方式,我们可以解决不同程序集,名称空间类方法签名都一样的方法,如何调用的问题。 参考 extern alias (C# Reference)^1

    17720

    第五章:面向对象编程

    建议还是使用“类.”来访问。这是正规的。 什么时候会出现空指针异常 一个空引用访问实例相关的,都会出现空指针异常。 静态代码块 语法格式: static{ } 静态代码块什么时候执行?...静态代码块在类加载时执行 ,并且执行一次 静态代码块可以编写多个 ,并且遵循自上而下的顺序依次执行 静态代码块什么时候使用?...方法覆盖 回顾方法重载 overload 什么时候考虑使用方法重载 在一个类中,如果功能相似,可以考虑使用方法重载。 这样做的目的是:代码美观,方便编程。...方法覆盖/override/方法重写/overwrite 什么时候考虑使用方法重写? 当从父类中继承过来的方法,无法满足子类的业务需求时。 当满足什么条件的时候 ,构成方法重写?...这就是所谓的"接口演变"问题 静态方法: 注意:java中规定,在JDK8之后,接口中可以一定静态方法,但是这个静态方法,只能通过“该接口”去调用的。别的都无法调用

    11511

    Static 静态+this

    (一):静态   1.Static修饰的都是静态的,都是类相关的,不需要new对象,直接采用类.的方式访问   2.当一个属性是类级别的,所有对象的这个属性都是一样的,直接定义为静态 类=属性+方法...  属性描述的是:状态   方法描述的是:行为动作 (二):什么时候定义为静态方法什么时候定义为实例方法?  ...并且在main方法之前执行 自上而下的执行顺序  并且执行一次   实例语句块在类加载之后,mian方法之后执行,在构造方法调用之后执行,调用一次构造方法 就执行一次 多次就执行多次  结果   (五...this不能在静态方法中使用 this大部分情况下可以省略,在区分实例变量和局部变量的时候不能省略 this()这种语法,只能出现在构造方法中的第一行,表示当前构造方法调用本类的其他构造方法,而达到代码的复用...根据传进去参数的不同,分别调用不同的构造方法  this为什么不能再静态方法中使用

    10310

    技术分享|static(静态)关键字的特点和用法

    当成员被静态修饰以后,除了可以被对象调用外,还可以直接被类调用。...五、静态的好处和坏处 好处:对对象的数据进行单独空间的存储,节省空间,没有必要每个对象中的存储一份 可以直接被类调用(Person.country) 坏处:生命周期过长。...(只能访问静态) 六、什么时候使用静态呢? 要从两个方面入手,因为静态修饰的内容有成员变量和成员方法(函数) 什么时候定义静态变量(类变量)呢?...把成员方法都定义成static的直接用类调用。一个类中会有一个默认的构造函数,这个构造函数的权限和所属的类一致。。...静态代码块格式: static { 静态代码块中的执行语句; } //特点:随着类的加载而执行,执行一次。用于给类进行初始化。

    48330

    网易云音乐Java面经(共三面)

    一面:   1 Java的集合类,hashmap如何处理冲突,除了使用红黑树和重写hashcode外还有哪些方法。 2 Java的多线程的使用方法,用过哪些。...6 类加载机制说一下,除了双亲委派,再说一下更具体的过程,什么时候进行静态变量的初始化。 7 mysql的索引讲一下,一级和二级索引的区别,什么时候可以不用查一级索引。答覆盖索引。...10 什么时候会发生死锁,有哪些必要条件,有哪些解决办法。 11 http请求过程会发生什么。...12 算法题,云音乐的歌单列表,调整顺序后需要保存到数据库,如何让每次保存的数据量最小,答使用数组标识该歌单是否有顺序调整,最后更新有发生变化的那些数据。...9 servlet有哪些方法,init方法实在什么时候执行的。 10 有哪些自己觉得比较好的地方说一下 巴拉巴拉了网络编程,分布式,大数据,云计算。 11 Linux命令了解哪些说一下。

    2.6K10
    领券