只是简单的记录一下自己的学习,第一次随便写写,如有错误请指正,
今天根据菜鸟教程的第一课基本语法的课程,看到了代码图,自己去手打了一下,发现class(是一个关键字)做为一个类,里面可以定义很多东西,包括但不限于,数据,方法,实例化,
c#中的数据类型三大类
1(值类型):一般像是我们使用的数字一样,int(整数) float(浮点数) bool(布尔值)等等
其中bool经常用来做if判断,其默认值为false,是比较重要的值类型
这里在菜鸟教程里提到了一个判断精确值的(sizeof)方法得到数值的大小(即是数据的存储大小)
2(引用类型):引用类型有三大类, 对象类型(Object) ,动态类型(Dynamic)字符串类型(String)
对象类型(Object)按我的理解基本上就是最大的类型可以包括几乎所以的类型,它的使用方法有个特殊的名称是装箱
动态类型(Dynamic):和对象类型像似 包括了大部分的数值类型 但和对像类型不一样的是对象类型是在代码被编译的时候使用发生,但是动态类型是在代码实时运行的时候发生使用
字符串类型(String)可以随意给你的变量分任意的字符串值 个人理解可以把c#里定义的东西转换为字符 string还有强制转换的方法后面再做补充,
3(指针类型)制定一种类型存储其他的类型,这里介绍比较少后面应该还有详细介绍,
结合菜鸟教程下面的笔记,根据自己的理解浅浅的说明一下值类型和引用类型的差别
值类型像是在一个空间里面定义的自己的大小样子数值,比如int a=1;而引用类型就是我把别人的衣服穿在了我自己的身上我就变的和别人一样,但本质上我还是我如a2=a1 这个时候的我像a1 但是我可以自己再去穿别人的衣服如 a2=3 这个时候a2就是3而不是=a1 这个时候的a1的变化跟我就无瓜,而字符串String和其他类型不一样的是String可以把换下来的衣服自动丢掉,不会多占用地方
using System;
namespace jbyf
{
class Rectangle
{
#region 定义类和数据方法
float length;
float width;
float a;
float b;
//public void Acceptdettails()
//{
// //length = 4.5f;
// //width = 5.5f;
//}
//public float Getarea()
//{
// //return length + width;
//}
//public void szgb()
//{
// //a = 7.8f;
// //b = 8.8f;
//}
//public float js2()
//{
// //return a + length * b + width;
//}
public double GetArea()
{
return length * width;
}
//public void Display()
//{
// //Console.WriteLine("length:{0}", length);
// //Console.WriteLine("width:{0}", width);
// //Console.WriteLine("a:{0}", a);
// //Console.WriteLine("b:{0}", b);
// //Console.WriteLine("Area:{0}", Getarea());
// //Console.WriteLine("js2:{0}", js2());
//}
#endregion
static void Main(string[] args)
{
#region 类的实例 和使用
//Rectangle r = new Rectangle();
//r.Acceptdettails();
//r.szgb();
//r.js2();
//r.Display();
//Console.ReadLine();
#endregion
#region sizeof方法的使用
//Console.WriteLine("sizeof 方法 int类型{0},float类型 {1}", sizeof(int), sizeof(float));
//Console.ReadLine();
#endregion
#region Object 装箱方法
Object[] obj=new object[2];
obj[0] = 0.2;
obj[1] = 2;//不会受到数值类型的影响 可以为大部分的数值类型
Console.WriteLine("float类型{0} int 类型{1}", obj[0], obj[1]);
#endregion
#region 动态类型
dynamic mingzhi = "动态类型";//动态类型的定义方法和其他一样;
#endregion
#region String 字符串类型
string mingzi = "lj";
string mingzhi1 = @"//lja";//可以将所以的东西变为字符,使方法无效化
//string 有强制转换的方法
#endregion
}
}
}
今天学习的简单代码