zoukankan      html  css  js  c++  java
  • 函数和方法

    直接调用的叫函数。

      函数是面向过程时提出的概念

    在类中的“函数”叫方法

      在类中的函数,在调用时,需要先调类,在调函数,这个函数就叫方法

      方法在C++中被称为成员函数

    参考:http://blog.jobbole.com/44230/

      

    “我用了很久的Applescript,但在shell脚本设计方面还是个新手。为了提高脚本性能,我想要多了解一些常用的脚本语言,譬如Javascript或Python。 

    有些概念我一直很困惑,譬如“面向对象”、“类”和“实例化”。 

    希望有人能用简洁的话语帮我解释下方法(method)和函数(function)的区别。在google上找到的那些答案对我来说太难理解了。 

    谢谢。”

    这个问题还是 willc2 在 2008 年 9 月 30 日在 StackOverflow 上提问的。

     

    下面先来看看被选为最佳答案的回复(来自  Andrew Edgecombe ):

    函数是一段代码,通过名字来进行调用。它能将一些数据(参数)传递进去进行处理,然后返回一些数据(返回值),也可以没有返回值。

    所有传递给函数的数据都是显式传递的。

    方法也是一段代码,也通过名字来进行调用,但它跟一个对象相关联。方法和函数大致上是相同的,但有两个主要的不同之处:

    1. 方法中的数据是隐式传递的;
    2. 方法可以操作类内部的数据(请记住,对象是类的实例化–类定义了一个数据类型,而对象是该数据类型的一个实例化)

    以上只是简略的解释,忽略了作用域之类的问题。

     

    Raffi Khatchadourian 对 Andrew Edgecombe 答案的补充:

    对于 1),你应当再加上“ 方法在 C++ 中是被称为成员函数”。因此,在 C++ 中的“方法”和“函数”的区别,就是“成员函数”和“函数”的区别。此外,诸如 Java 一类的编程语言只有“方法”。所以这时候就是“静态方法”和“方法”直接的区别。

    对于2),你应当补上方法可以操作已在类中声明的私有实例(成员)数据。其他代码都可以访问公共实例数据。

     

    Aaron 的回答:

    方法和对象相关;

    函数和对象无关。

    Java中只有方法,C中只有函数,而C++里取决于是否在类中。

     

    百度贴吧中的回答:http://bbs.csdn.net/topics/390017497

      c语言等语言里叫函数,面向对象编程,函数写到类里边就叫做方法,函数可以直接调用,对象中的方法一般都有指针this指向它,但是有时一些方法实在不需要写到类里边,所以面向对象的语言有了静态方法,不过这个概念没必要纠结,用的多了自然就明白啦

      在数据库中Procedure(存储过程)和Function(函数)是不同的。Function必须要有返回值。

      函数应该就是方法,
    方法和属性是相对于类来说的(面向对象),
    java和C#这种面向对象的语言,一切都是类,
    是类,就有方法和属性,
    例如人也是一个类(人类),人类都有说话的功能(相当于方法),人类都有年龄和性别(相当于属性),
    C#代码:
    //下面定义了一个类:people(人类)
    class people
    {
        //下面两个是people的属性
        public int age;  //年龄
        public bool sex; //性别
        
        //下面是people的方法
        public String speak () //说话
        {
            //........       
            return "";
        }
    }

  • 相关阅读:
    ASP.NET多线程下使用HttpContext.Current为null解决方案
    Pig性能优化
    重温设计模式之前言
    MVC4+WebApi+Redis Session共享练习(下)
    C#中对象的输出
    CYQ.Data 支持WPF相关的数据控件绑定.Net获取iis版本
    java版微信公众平台自定义菜单创建代码实现
    android动画特效之解决解决移动后闪烁现象,解决输入法弹出后位置回复原状,解决两个动画叠加
    VMware 11安装Mac OS X 10.10 及安装Mac Vmware Tools(超详细),以及动态调整虚拟机硬盘大小
    三个API:开启、关闭、关闭线程重定向
  • 原文地址:https://www.cnblogs.com/zhuzhu2016/p/6160720.html
Copyright © 2011-2022 走看看