黑马程序员 - 学习笔记1 重载方法
来源:互联网 发布:淘宝摄影接单 编辑:程序博客网 时间:2024/06/05 10:55
---------------------- ASP.Net+Unity开发、.Net培训、期待与您交流! ----------------------详细请查看:www.itheima.com
为什么要引入重载方法
问题描述:
在面向对象编程中有这样一种方法:方法名称相同,但是返回值类型,参数个数,或者参数类型不同,这样的方法称为重载方法。
那么,C#中为什么要引入重载方法?
解答:
重载(overload)是指定义多个名称相同的方法,通过定义不同的输入参数或者返回值类型来区分这些方法。在调用时,CLR会根据
不同的参数样式来选择合适的方法执行,重载是多态的体现。
一般形式:
public void test(int x,int y){}
public void test(int x){}
public void test(int x,string y){}
public void test(double x){}
从一般形式得出,重载的特征如下:
(1)方法名必须相同。
(2)参数列表必须不相同,与参数列表的顺序无关。
(3)返回值类型可以不相同。
通过实例来加深印象,记住重载
public class nub
{
private string str = "分数";
public string value()
{
return str;
}
public string value(string s)
{
return str.Insert(str.Length,s);//用Insert 在字符串的 长度末尾增加字符"s".返回
}
public string value(int num)
{
StringBuilder sb = new StringBuilder(str);
sb.AppendFormat("{0:c}",num);
return sb.ToString();
}
}
public class program
{
static void Main(string[] args)//要将main方法写在program类里,才能够调用class nub.
{
nub a = new nub();
string result = a.value();
Console.WriteLine("原来的输出------"+result);
result = a.value(":");
Console.WriteLine("插入字符串的输出------"+result);
result = a.value(20000);
Console.WriteLine("格式化文本---"+result);
Console.ReadKey();
}
}
控制台输出结果为:
原来的输出------分数
插入字符串的输出------分数:
格式化文本------¥2,000.00
总结:
重载主要用来增加代码的扩展性,从而提高代码的重用率,方便代码的后期维护。
---------------------- ASP.Net+Unity开发、.Net培训、期待与您交流! ----------------------详细请查看:www.itheima.com
- 黑马程序员 - 学习笔记1 重载方法
- 黑马程序员_c#基础知识学习笔记:方法重载和out,ref传参
- 黑马程序员——Java学习笔记--方法的重载(Overload)与重写(Override)
- 黑马程序员-OC语言-方法重载问题(听课笔记)
- 黑马程序员--学习笔记--Java中的重载和重写
- 黑马程序员学习笔记_OC之类方法
- 黑马程序员_java方法学习笔记
- 黑马程序员-OC学习笔记-----方法
- 黑马程序员 学习笔记1
- 黑马程序员---学习笔记
- 黑马程序员----学习笔记
- 黑马程序员----学习笔记
- 黑马程序员---学习笔记
- 黑马程序员:构造方法的重载
- 黑马程序员—方法重载日志总结
- "黑马程序员"-到底重载了哪个方法
- 黑马程序员—C#方法的重载
- 黑马程序员--重载方法|构造函数
- C# 通过 ManagementClass 获取本机IP 地址 报错
- Android-Parcelable理解与使用(对象序列化)
- js中关于style,currenStyle,和getComputedStyle的区别
- android之Intent复杂数据的传递(ArrayList<String>类型的数据)
- meta
- 黑马程序员 - 学习笔记1 重载方法
- 开通博客,欢迎来交流
- 系统权限数据库设计方案
- 10.4 UIScrollview概念和用法:单张图片缩放
- 你知道这些程序出现这些结果的原因吗?
- 【IPV6基础知识】IPV6邻居发现协议
- PL/SQL Developer集成Oracle数据库客户端版安装教程
- WindowsPhone自定义控件详解(三) - 实战:自定义带水印的PasswordBox控件,WatermarkedPasswordBox
- POJ 1201 Intervals