今天突然对学C#有了兴趣,翻查了书籍,觉得C#真心是一种比较好的语言,外加上C#在大学的课堂都没有讲过,希望通过课外的自学可以理解理解它~~
在红旗等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供成都做网站、网站设计、外贸营销网站建设 网站设计制作定制网站开发,公司网站建设,企业网站建设,高端网站设计,全网整合营销推广,成都外贸网站建设公司,红旗网站建设费用合理。
其实可以说,接触过C、C++和java编程的人对于C#的入门其实相当之简单,不过我才学C#,没有学到深处,也不好说,但希望自己大致能够好好记住一些简单的特点~~
最简单的helloworld入门就不说了,不过下面也是一个简单的写法,使用的工具为visual studio 2012
必须引入系统的命名空间名,不过工具visual在新建项目的时候都会自动生成,所以代码就不贴了
using HelloWorld; namespace Test { class MainPrograme { static void Main(String[] args) { Program p = new Program(); p.show(); } } } namespace HelloWorld { class Program { public void show() { Console.WriteLine("必须引用命名空间HelloWorld后才可以输出,否则提示出错!"); Console.ReadLine(); } } }
**************
using指令后面跟的是命名空间名,在C++里的using namespace std类似,都是为了方便引入资源
在namespace Test里如果想要使用命名空间HelloWorld里的类和方法,必须在前面声明using HelloWorld,visual工具比较好的是,当你没有使用using HelloWorld的时候,它在编程的时候你想写Program类它会自动抛出异常,避免不必要的编译工作查错。
因为C#和C等语言的使用和类型都有相似的地方,所以下面代码只对部分作展示:
namespace Third { enum MonthOfYeear { January, Feburary, March, April, May, June, July, Aguest, September, October, Novermber, December } class Program { static void Main(string[] args) { /*byte隐式转换,和其他语言一样*/ int x = 123; byte y = 123; int result = x + y; Console.WriteLine("结果:" + result); /*bool类型的使用*/ bool flag = false; Console.WriteLine("请输入第一个数:"); /*Convert的强制类型转换*/ int m = Convert.ToInt32(Console.ReadLine()); Console.WriteLine("请输入第二个数:"); int n = Convert.ToInt32(Console.ReadLine()); if (m > n) { flag = true; } else { flag = false; } Console.WriteLine("结果为:" + flag); /*enum类型的使用*/ MonthOfYeear mon; mon = MonthOfYeear.Aguest; /*注意输出使用的语法*/ Console.WriteLine("本月是{0}", mon); } } }
程序比较简单,所以大概需要注意的为Convert.ToInt32(Console.ReadLine());显式强制类型转换和Console.ReadLine()中从键盘读入数据,输出结果为True或False。另外注意最后一行的输出格式,在C#里看得比较多的都为上面的输出格式。
关于引用变量:
string为引用类型,但当涉及到==或!=运算的时候,比较的是string对象而不是引用的值
引用类型使用new关键字创建对象实例,并存储在堆中
引用变量还有很多的相关说明,我认为跟java的说法比较类似。
namespace Reference { ////// 引用类型的变量称为对象,可存储对实际数据的引用 /// class Sample { public int i = 10; } class Program { static void Main(string[] args) { object o;//定义object类型的引用变量 o = 1;//赋值 Console.WriteLine("引用变量初始值:" + o); o = new Sample();//使用new关键字实例化类,并赋值给变量 Sample s;//声明类对象 s = (Sample)o;//使用引用变量实例化对象 Console.WriteLine("引用变量的值为:" + s.i); } } }
至于引用变量装箱拆箱的操作,通过下面代码也比较好理解
namespace Box { class Program { static void Main(string[] args) { /*值类型变量的值复制到装箱得到的对象中之后,改变值类型变量的值不会影响装箱对象的值*/ int i = 10; object obj = i;//对变量i进行装箱操作 Console.WriteLine("i的值为:{0},装箱后的值为:{1}", i, obj); i = 22; Console.WriteLine("i的值为:{0},装箱后的值为:{1}", i, obj); int j = (int)obj; Console.WriteLine("拆箱后的值,装箱的值{0},拆箱的值{1}", obj, j); /*装箱对象的值和拆箱得到的值类型数据的值相等,装箱拆箱要符合类型一致原则*/ } } }
暂时先写这些,这些都是看书里面学的简单案例,程序比较简单而且好入门~~~