方法和函数的区别?

问题描述

如题菜鸟请教请师兄师姐帮忙!最好举个例子

解决方案

解决方案二:
这两个名词不严格区分,一般地函数只有返回值的方法,方法是OO中的概念。
解决方案三:
意思一样的。
解决方案四:
引用1楼的回复:

这两个名词不严格区分,一般地函数只有返回值的方法,方法是OO中的概念。

函数是有返回值的方法方法和函数都是有参数的?什么是OO?
解决方案五:
OO就是面向对象的意思。在OO中,我们说一个类有方法和字段,也可以说它有成员函数和成员变量,函数和变量是程序层面的术语,而方法和字段是设计层面的术语。
解决方案六:
这就好比从动物学的角度看,动物有公母之分。比如母狗、母狮、母猴。但是在人类社会中,我们用了男、女,比如女人,而不是母人。其实公母和男女是一个意思。在不同场合叫法不同而已。因为有时候,我们研究人的时候会忽略它的人的属性,考虑它的动物属性。典型的,我们说雌性激素,我们不说女性激素。
解决方案七:
这两个是一样的。以前c语言中我们一直称之为函数,大概因为面向过程编程中它是很独立的部分,没有严格意义的附属于谁。现在在.net里面我们称之为方法,因为它是作为一个抽像的对象的本身的组成部分而存在的,这时候把其称为这个对象的方法比较贴切。
解决方案八:
在类型语言中(如:C#,Java)叫方法,在弱类型语言中(如:javascript,vbscript)叫函数,没有严格区分
解决方案九:
一个东西,用对象调用的叫方法,直接调函数名的叫函数
解决方案十:
是一个意思,上面解释了。
解决方案十一:
不用太纠结于这两个概念。只用用方法或函数代码实现了你要的逻辑就OK了哈哈
解决方案十二:
c语言等语言里叫函数,面向对象编程,函数写到类里边就叫做方法,函数可以直接调用,对象中的方法一般都有指针this指向它,但是有时一些方法实在不需要写到类里边,所以面向对象的语言有了静态方法,不过这个概念没必要纠结,用的多了自然就明白啦
解决方案十三:
函数Function,过程Procedure,方法Method,你可以简单把他们当成同一个概念:都是由若干语句组成的一个可执行代码体。
解决方案十四:
在数据库中Procedure(存储过程)和Function(函数)是不同的。Function必须要有返回值。
解决方案十五:
对Method的翻译不同而已
其他方案:
引用1楼的回复:

这两个名词不严格区分,一般地函数只有返回值的方法,方法是OO中的概念。

没什吗区别好象。
其他方案:
C#,Java叫方法,如:javascript,vbscrip叫函数
其他方案:
不用纠结于这两个概念,基本上差不多。C#,java中叫方法C语言,C++,javascript中叫函数
其他方案:
一样滴!!
其他方案:
其实基本上是一个概念,“函数”这个叫法是面向过程的程序语言的叫法,在面向对象的编程语言中,一般叫“方法”,之所以还有些人称“方法”为“函数”主要是受过去叫法的影响,其实在C#中明确使用“函数”这个概念的也只有类的“构造函数”和“析构函数”了,主要是习惯叫法的问题吧,其实完全可以叫“构造方法”和“析构方法”。MSDN对“构造函数”的解释是:构造函数是在创建给定类型的对象时执行的类方法
其他方案:
引用14楼的回复:

对Method的翻译不同而已

扯大了。函数:Function(面向过程语言教程的英文原版,是否有一个把Function翻译为Method的?)方法:Method(只有不地道的面向对象语言教程才会把Method叫做Function)
其他方案:
一样的。不要纠结这个。
其他方案:
没严格区分至少我觉得都是一个东西。。
其他方案:
一般是调用.NET库的一般叫函数自己写出来的一般叫方法其实两个没什么区别
其他方案:
没什么区别,只是对于不同的平台叫法不一样而已吧。
其他方案:
引用17楼的回复:

不用纠结于这两个概念,基本上差不多。C#,java中叫方法C语言,C++,javascript中叫函数

都是代码。。。而已。。。
其他方案:
方法就是函数----谁TM敢否认,呵呵
其他方案:
意思一样的,可能就是方法偏重于类,也就是面向对象设计的,注重每个函数的功能所以叫方法;而函数偏重于面向过程,有可能是功能描述也有能不是,两者都有是看编程者自己怎么看的
其他方案:
函数应该就是方法,方法和属性是相对于类来说的(面向对象),java和C#这种面向对象的语言,一切都是类,是类,就有方法和属性,例如人也是一个类(人类),人类都有说话的功能(相当于方法),人类都有年龄和性别(相当于属性),C#代码://下面定义了一个类:people(人类)classpeople{//下面两个是people的属性publicintage;//年龄publicboolsex;//性别//下面是people的方法publicStringspeak()//说话{//........return"";}}
其他方案:
反正在我的概念里都一样,方法就是不需要返回值(或者说返回类型是void)的函数。
其他方案:
方法和函数都是一样的,只不过叫法不同而已,在java那里我们叫方法,不叫函数,在C#里就叫函数,属性其实也是函数,只不过C#帮我们封装成了属性,在java中没有属性这说法,java是通过两个方法对一个变量进行读和写,比如intn=0;publicvoidsetN(intm){n=m;}publicintgetN(){returnn;}这两个方法就相当与C#里的读/写属性了
其他方案:
不要纠结这个了,方法可以通过函数实现的,函数也可实现某一方法。两者没多大区别!
其他方案:
这个问题你不用知道。你知道太阳怎么来的吗?管他怎么来的,只要暖和就行了。可以晒干衣服就行了!意思就是会用方法,函数就OK!
其他方案:
归根结底,都是二进制数据。
其他方案:
其实是面向“类”而言,函数在函数所在的类里面调用,该函数就叫做函数;如果跨类调用,且该函数不是全局函数,那么该函数就是该类的方法。
其他方案:
某些2B面试官就喜欢拿这些2B问题难为人。楼主不必鸟这种人。
其他方案:
记得delphi中Procedure没有返回值,Function有返回值
其他方案:
方法就是你说的函数。
其他方案:
差不多,C#,java中叫方法,C,javascript中叫函数,意思是一样的,就是叫法不一样
其他方案:
有class概念的叫方法,没有class概念叫函数。
其他方案:
一个意思吧~,只是叫法不一样
其他方案:
这两个是一回事,如果非要分清的话可以理解为,如果一个类的方法拷贝到任意一个类里面也不会影响其运行和结果的话就可以认为它是一个函数,如果是OO里面的话这样的方法都应该统一放到一个叫Tools的类里面,成为这个类的方法。有点绕嘴呵呵
其他方案:
还是有区别的在结构语言中只有函数在面向对象(OO)中类对象的某个函数称为方法,方法依附于对象,没有独立于对象的方法与有没返回值无关,VB中无返回值的称为过程,有返回值的称为方法,C中无论有无返回值均称方法,C也没有过程的概念
其他方案:
在oo中当作同义词
其他方案:
方法是面向对象里的概念,函数是C这种流程化编程里的概念,可以认为两者是同义词
其他方案:
不同语言不同叫法c#中没有函数这个叫法
其他方案:
该回复于2012-04-25 13:25:13被版主删除
其他方案:
函数:通常是面向过程中如C开发中叫法方法:通常是面向对象中如java/C#等开发中叫法无本质上区别~
其他方案:
两个都一样,都是构成类的
其他方案:
引用16楼的回复:

C#,Java叫方法,如:javascript,vbscrip叫函数

都是面向对象惹的祸!!
其他方案:
我的理解是:在C#中,方法method是类暴露给外部调用的,函数function是供类内部互相之间调用更直观一些,public的都是方法,private都是函数。这是一种思路而已

时间: 2024-09-20 00:11:05

方法和函数的区别?的相关文章

java中方法和函数的区别与联系是什么

问题描述 java中方法和函数的区别与联系是什么 java中方法和函数的区别与联系是什么,是不是叫法不同而已,比如构造方法即是构造函数 解决方案 没有什么区别.比如外婆在北方叫姥姥. 解决方案二: 方法和函数的区别

JavaScript中的函数声明和函数表达式区别浅析

 这篇文章主要介绍了JavaScript中的函数声明和函数表达式区别浅析,本文总结的浅显易懂,非常好的一篇技术文章,需要的朋友可以参考下     记得在面试腾讯实习生的时候,面试官问了我这样一道问题. 代码如下: //下述两种声明方式有什么不同 function foo(){}; var bar = function foo(){};   当初只知道两种声明方式一个是函数声明一个是函数表达式,具体有什么不同没能说得很好.最近正好看到这方面的书籍,就想好好总结一番. 在ECMAScript中,有两

对象-oc 类的继承的实质,以及是怎样调用方法 和函数的

问题描述 oc 类的继承的实质,以及是怎样调用方法 和函数的 父类里声明的属性,会生成默认生成一个私有的成员变量.即不能被子类访问,那么子类通过继承得到了父类的属性,只能通过setter 和 getter 方法区访问父类的私有变量,那么这个私有变量不属于子类,那么在实例化这个子类的时候就没有这个私有变量,那么通过继承过来的setter 和getter方法访问的是什么,私有变量根本就没有生成啊! 同理在使用{}声明的私有变量同样可以在提供外部接口让外部访问,但是当子类继承后也可以通过生成实例对象,

深入探讨:宏、内联函数与普通函数的区别_C 语言

内联函数的执行过程与带参数宏定义很相似,但参数的处理不同.带参数的宏定义并不对参数进行运算,而是直接替换:内联函数首先是函数,这就意味着函数的很多性质都适用于内联函数,即内联函数先把参数表达式进行运算求值,然后把表达式的值传递给形式参数.    内联函数与带参数宏定义的另一个区别是,内联函数的参数类型和返回值类型在声明中都有明确的指定:而带参数宏定义的参数没有类型的概念,只有在宏展开以后,才由编译器检查语法,这就存在很多的安全隐患.    使用内联函数时,应注意以下问题:    1)内联函数的定

C++参考——成员函数、友元函数和一般函数有区别

[项目-成员函数.友元函数和一般函数有区别](1)阅读下面的程序,体会注释中的说明. //例:使用成员函数.友元函数和一般函数的区别 #include <iostream> using namespace std; class Time { public: Time(int h,int m,int s):hour(h),minute(m),sec(s) {} void display1(); //display1是成员函数 friend void display2(Time &); /

C++中sprintf使用的方法与printf的区别分析_C 语言

本文实例讲述了C++中sprintf使用的方法与printf的区别.分享给大家供大家参考.具体分析如下: 首先我们在MSDN看一下printf的原型和sprintf的原型 复制代码 代码如下: int printf( const char *format [, argument]... ); 和 复制代码 代码如下: int sprintf( char *buffer, const char *format [, argument] ... ); 从定义来看两者的功能其实很相似的. 如果你接触的

C/C++中的mem函数和strcopy函数的区别和应用_C 语言

strcpy和memcpy都是标准C库函数,它们有下面的特点. strcpy提供了字符串的复制.即strcpy只用于字符串复制,并且它不仅复制字符串内容之外,还会复制字符串的结束符. memcpy提供了一般内存的复制.即memcpy对于需要复制的内容没有限制,因此用途更广. mem系列函数是面试的时候常考的知识点,我们需要熟练掌握这三个函数的原理和代码实现,要能准确无误的写出代码. memcpy.memset和memset三个函数在使用过程中,均需包含以下头文件: //在C中 #include<

比较常见的javascript中定义函数的区别_javascript技巧

比较常见的javascript中定义函数的区别主要通过以下三个方面给大家讲解,需要的朋友参考下吧 1:调用关键字function来构造 如: function distance(x1,x2,y1,y2) { var dx=x2-x1; var dy=y2-y1; return Math.sqrt(dx*dx+dy*dy); } 2:使用Function()构造函数 如: var f=new Function*"x","y","return x*y"

c++虚函数和纯虚函数的区别

虚函数为了重载和多态的需要,在基类中是由定义的,即便定义是空,所以子类中可以重写也可以不写基类中的函数! 纯虚函数在基类中是没有定义的,必须在子类中加以实现,很像java中的接口函数! 多态是C++的重要特性,通过基类指针来访问派生类的函数. 虚函数就是为了实现这功能而定义的函数,虚函数可以在定义时实现也可以不实现,定义了虚函数的类可以实例化. 纯虚函数更多的是表示接口的含义,纯虚函数定义时不能实现,需要在派生的子类中实现且必须实现,含有纯虚函数的类不能实例化. 虚析构函数与虚函要成对出现,以便