【C#】类与对象

C#属于面对对象的一种语言

对象:看得到的,摸得到,特指,具体的;类实例化成一个对象后占内存
: 抽象出来的一个模板,类不占内存,是对象的类型,从对象中抽象出相同的属性和方法,类具有属性和方法
属性:这个对象的一些特征
属性值:描述这个特征的值
方法:对象的行为动作



如何写类  
【类默认internal】class 类名
{
       成员:变量(字段):默认private,通过属性给变量赋值取值  属性:读和写
                 方法
}

面对对象的3大特性:封装,继承,多态


封装的目的:封起来,装进去,保护变量的值不能随意的访问修改,所以设置访问级别


字段,属性,方法都是成员——都需要类成员的访问,所以都需要设置访问级别


访问级别


internal 当前程序集内可以访问

public 公共成员,完全公开,没有访问限制

private 私有成员,只有在类的内部才可以访问

protected 保护成员,在类内部和继承类中可以访问类中,字段一般都是private私有的,当字段的修饰为public 和 private才能在外部访问到
利用属性可以对赋值取值的过程进行非法控制,做到字段做不到的功能,达到了封装的目的
在属性中定义:get set,保证对字段的读写符合要求,所以,允许外部访问的变量一定要声明为属性
属性分类:只读,只写,读写,属性一般为:大写,无下划线,先声明字段,可以自动生成属性的get set方法

类中有一个很重要的方法:构造方法,使得我们对对象的赋值方便很多!

构造函数解决——只读属性的赋值
不写构造函数,会有默认无参的构造函数
若已经写了有参的构造函数,但还想用无参的构造函数,就自己写一个无参的构造函数
构造函数的重载:多个参数类型不同的构造函数

构造方法解决的问题
1.赋初值时重复的书写对象名。
2.对于只读属性实例化后不能赋值,可以通过构造函数初始化


class:引用类型,分配在内存的堆上,引用传递
struct:值类型,分配在内存的栈上,赋值传递

析构函数
1.只能对类使用析构函数
2.一个类只有一个析构函数
3.无法继承和重载析构函数
4.无法调用析构函数,是被自动调用的
5.没有修饰符,没有参数
6.垃圾回收器

命名空间:类的文件夹
调用方法
1.添加引用——>using 命名空间——>使用
2.添加引用——>命名空间.类=实例化

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值