C#(day4)

8 篇文章 0 订阅
C#面向对象编程基础

1、软件开发方法

1.1、结构化程序设计方法
结构化程序设计(面向对象的程序设计)采用“模块化”的设计思路,把程序要解决的总目标分解为子目标,再进一步分解为具体的小目标,把一个小目标成为一个模块。分析出解决问题的若干步骤,然后用模块(通常用函数实现)把这些步骤一步一步地实现,使用的时候一个一个依次调用就可以了。

1.2、面向对象的开发方法
面向对象的软件开发方法是一种以对象为基础,以事件或消息来驱动对象执行处理的软件开发方法。它具有抽象性、封装性、继承性及多态性。面向对象的开发方法实现了软件工程的三个主要目标:重用性、灵活性和扩展性。

1.3、面向对象程序设计方法
面向对象程序设计是将对事物的特征和功能的抽象描述放到类的定义中,通过类的实例化创建对象,更接近于人们日常生活中的认知模式。
特征:①系统中的一切皆为对象。 ②对象是数据和数据相关操作的封装体。 ③将同种对象进行抽象描述,称为类的定义,对象是类的实例化。 ④对象之间是通过消息传递实现动态链接。




2、类

2.1、类的声明
格式:
[访问修饰符] class 类名
{
    类成员定义
}
访问修饰符:
public(可被所属类的成员以及不属于类的成员访问)
internal(可被当前程序集访问)
protected(可被所属类及其派生类访问)
private(仅所属类的成员才可以访问)

2.2、创建对象:类给出了对象的抽象描述,要在程序中使用对象,需要使用对象所属的类进行实例化。
格式:  类名 对象名 = new 类名[];



2.3、匿名类和嵌套类
var 对象名
{
    类成员定义
}

2.4、构造函数
类名 (参数表)
{
    函数体,通常用于给类中的数据成员赋初值。
}
注意:
①自动生成的构造函数:当我们定义一个类时,如果没有给出构造函数,vs将自动生成一个没有参数的构造函数。
②自定义构造函数:自定义构造函数的函数名与类名相同,使用访问修饰符public。






3、类的成员

3.1、类的数据成员
[访问修饰符] 类型名 数据成员名
注意:类的数据成员在定义时通常需要给出访问修饰符。如果没有显式给出,则系统默认访问修饰符为private,即只有类内的函数可以访问该数据成员,如果为public,则允许类的数据成员在类定义之外被访问。
①类的数据成员可以是任意类型,一个类的实例可以作为另一个类的数据成员。
②类的数据成员可以在类的构造函数中进行初始化。
③类的数据成员可以分为静态数据成员和非静态数据成员。
非静态数据成员的引用格式: 对象名.数据成员名
静态数据成员的引用格式: 类名.数据成员名



3.2、类的方法成员
[访问修饰符] 返回值类型 方法名(参数表)
{
    语句序列;
}
在Main方法中调用类的方法成员,格式为:
对象名.方法名(参数表);
调用静态方法成员,格式为:
类名.方法名(参数表);

3.3、类的属性成员
在类中定义属性成员的格式为:
public 类型 属性名
{
    set
      {
      }
    get
      {
      }
}
属性的引用格式为: 对象名.属性名



3.4、索引指示器
[访问修饰符] 数据类型 this[索引类型 index]
get
      {
        OilVolume = value;
      }
set
      {
        return OliVolume;
      }



3.5、析构函数
~类名()
{
}





4、C#常用类操作

4.1、Convert类:提供了很多静态方法,用于实现数据类型的转换。
格式: Convert.方法名(参数表)
常用方法:
Convert.ToBoolean(value)  //将value转换为bool类型
Convert.ToByte(value)  //将value转换为byte类型
Convert.ToChar(value)  //将value转换为bool类型
Convert.ToDataTime(value)  //将value转换为DataTime类型
Convert.ToDecimal(value)  //将value转换为Decimal类型
Convert.ToDouble(value)  //将value转换为Double类型
Convert.ToInt16(value)  //将value转换为Int16类型
Convert.ToInt32(value)  //将value转换为Int32类型
Convert.ToInt64(value)  //将value转换为Int64类型
Convert.ToUInt16(value)  //将value转换为UInt16类型
Convert.ToUInt32(value)  //将value转换为UInt32类型
Convert.ToUInt64(value)  //将value转换为64类型
Convert.ToSByte(value)  //将value转换为SByte类型
Convert.ToSingle(value)  //将value转换为Single类型
Convert.ToString(value)  //将value转换为String类型

4.2、string类和StringBuilder类

string
静态方法:
格式:string.方法名
string.Compare(str1,str2)  //字符串比较
string.Copy(str)  //字符串复制
string.Equals(str1,str2)  //字符串相等
string.Join(separator,arr)  //字符串合并 (separator为字符串,arr为字符串数组)
非静态方法:
格式:对象名.方法名
对象名.CompareTo(string str) //字符串比较
对象名.Contains(str)  //判断是否包含给定子串
对象名.IndexOf(str)  //查找给字符串定位(若字符串不存在,返回-1)
对象名.IndexOfAny(arr )  //查找字符串是否包含给定字符数组中的字符(arr为字符数组)
对象名.Insert(startindex,str)  //插入字串(startindex为整型值,str为字符串)
对象名.Remove(startindex)  //删除子串(startindex为整型值)
对象名.Remove(startindex, count)  //删除指定位置到最后位置的所有字符
对象名.Replace(substr1,substr2)  //替换字串(substr1,substr2为字符串)
对象名.Replace(char1,char2)  //将字符串中的所有字串substr1替换成substr2(char1,char2为字符型数据)
对象名.Split(chararr)  //拆分字符串 (chararr为字符数组)
对象名.Trim( )  //去空格
对象名.TrimEnd( )  //去掉字符串末尾的空格
对象名.TrimStart( )  //去掉字符串首部的空格

StringBuilder
String类在进行字符串运算时(如赋值,字符串连接等)时会产生一个新的字符串实例,需要为新的字符串实例分配内存空间,相关的系统开销可能会非常昂贵。如果要修改字符串而不创建新的对象,且操作次数非常多,则可以使用StringBuilder类。


4.3、Data Time类和TimeSpan类



4.4、Math类
Math.Abs 返回指定数字的绝对值。
Math.Acos 返回余弦值为指定数字的角度。
Math.Asin 返回正弦值为指定数字的角度。
Math.Atan 返回正切值为指定数字的角度。
Math.Atan2 返回正切值为两个指定数字的商的角度。
Math.BigMul 生成两个 32 位数字的完整乘积。
Math.Ceiling 返回大于或等于指定数字的最小整数。
Math.Cos 返回指定角度的余弦值。
Math.Cosh 返回指定角度的双曲余弦值。
Math.DivRem 计算两个数字的商,并在输出参数中返回余数。
Math.Exp 返回 e 的指定次幂。
Math.Floor 返回小于或等于指定数字的最大整数。
Math.IEEERemainder 返回一指定数字被另一指定数字相除的余数。
Math.Log 返回指定数字的对数。
Math.Log10 返回指定数字以 10 为底的对数。
Math.Max 返回两个指定数字中较大的一个。
Math.Min 返回两个数字中较小的一个。
Math.Pow 返回指定数字的指定次幂。
Math.Round 将值舍入到最接近的整数或指定的小数位数。
Math.Sign 返回表示数字符号的值。
Math.Sin 返回指定角度的正弦值。
Math.Sinh 返回指定角度的双曲正弦值。
Math.Sqrt 返回指定数字的平方根。
Math.Tan 返回指定角度的正切值。
Math.vTanh 返回指定角度的双曲正切值。
Math.Truncate 计算一个数字的整数部分。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值