一、 方法的由来:方法为method,它的前身是c/c++语言的函数(function)。就是说在面向对象的语言中称为方法,在非面向对象的语言中称为函数。
例如在C语言中:
#include <stdio.h>
double add(double a,double b)
{
return a+b;
}
int main()
{
printf ("hello world !");
double x=3;
double y=5;
double result=add(x,y);
printf("f%+f%=f%",x,y,result);
}
同样的程序在c++中
#include <iostream>
double add(double a,doube b)
{
return a+b;
}
int main()
{
std::cout<<"hello world";
double x=3;
double y=5;
std::cout<<x<<"+"<<y<<"="<<result;
}
另外,方法永远是类或者结构体的成员。c#中函数不可以独立于类(或结构体)之外;只有作为类(或结构体)的成员时才能被称为方法;但是在c++语言中,函数可以独立于类之外,被称为去全局函数。方法表示类能做什么事情。类最基本的成员只有两个——字段和方法(本质是数据+方法)。
为什么需要方法和函数呢?
其目的主要有三个:1.隐藏复杂的逻辑 2.把大算法分解为小算法 3.服用(reuse,重用)
例如:
class calsulator
{
public double GetCircleArea(double r) //计算圆面积
{
return Math.PI*r*r;
}
public double GetCylinderVolume(double r,double h) //计算圆柱体积,重用了圆面积公式
{
return GetCircleArea(r)*h;
}
public double GetConeVolume(double r,double h) //计算圆锥体积,重用了圆柱体积公式
{
return GetCylinderVolume(r,h)/3;
}
}
二、声明方法详解:方法有静态方法和实例方法。其中静态方法与类关联,实例方法是在main函数中声明一个实例。
三、调用方法:调用方法时的实参要与定义方法的形参列表相匹配。