C#基础学习01(基础关键字/枚举、结构、值类型和引用类型)

与Java区别

参数地址传递:ref     例:public void init ( ref int i , ref string s ){  }

数组循环:foreach

访问器(get、set):例

private int age;
public int Age
{
    get { return age; }
    set
    {
        if (value >= 0 && value <= 100)
        {
            age = value;
        }
        else
        {
            age = 18;
        }
    }
}

常量:const

析构函数:~类名    例:~Student(){}      与构造函数相反,当对象生命周期结束调用。

~Student()
{
    Console.WriteLine("析构函数被调用了");
}

枚举:关键字:enum

特点:1)枚举是一组描述性的名称

           2)枚举对可能的值进行约束

           3)枚举允许描述性名称表示整数值,默认从0开始。

用法:1.定义一个枚举并定义值  (不能包含方法)

public enum EnumSex
{
    Man,Woman
}

           2.创建枚举类型变量

private EnumSex sex;

public EnumSex Sex
{
    get { return sex; }
    set { sex = value; }
}

           3.给变量赋值(只能选择定义的枚举内的值)

Student stu = new Student();
stu.Age = -19;
stu.Likes = "唱歌";
stu.Sex = EnumSex.Woman;//给定义的枚举变量赋值
stu.Say();              //打印输出信息
Console.ReadLine();

           4.输出信息中可以添加判断

public void Say()
{
    String sSex;
    if (sex == EnumSex.Man)//对枚举变量进行判断
    {
        sSex = "男";
    }
    else 
    {
        sSex = "女";
    }
    Console.WriteLine("我的名字是:{0},性别:{1},今年{2}岁,我喜欢{3}.",name,sSex,age,likes);
}

结构:关键字:struct

用法与类相似,创建对象可以不用new,可以有构造方法,但是必须写带参数的构造方法。

与类相同点:

 结构
不同点引用类型值类型
可以被继承不能被继承
可以有默认构造函数不可以有默认构造函数
可以添加无参构造函数可以添加构造函数,但必须带参数
创建对象必须使用new创建对象可以不用new
类中可以给字段赋值结构中给字段赋值是错误的
引用类型值类型
相同点都可以包含字段、方法
都可以实现接口

值类型和引用类型

值类型值存放到栈中

引用类型值存放在堆中,栈中存放的是对值的引用地址

                        类是引用类型,结构是值类型

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值