.net程序基本编写、执行流程(c#)
1>编写c#代码,保存为.cs文件。
2>通过csc.exe程序来将.cs文件编译为.net程序集(.exe或.dll;是“伪exe”;包含很多内容其中有微软中间语言IL可以被翻译成类似汇编的中间码)。此时的exe或dll并不是机器码(cpu不可理解)。【>csc /out:c:\a.exe c:\program.cs】
3>“运行”exe文件时,程序通过JIT编译(Just In Time)即时编译,将程序集编译为cpu能理解的机器码,这时cpu才能执行。(这个编译过程会与当前机器有关(根据当前机器的内存、cpu等))。
即时编译:用到哪里,编译哪里
在类中直接声明的成员变量变量,可以不赋初值,有默认初值
在方法中声明的局部变量声明必须赋值。
继承
语法 Student :Person
作用是代码重用和多态,特性是单根性和传递性,Equals/toString等方法是Object类里的,如果自定义类不继承的话就默认继承Object在IL里可以看到。
声明一个父类的子类对象(里氏替换原则)->多态
指定子类调用父类的构造函数 :base(name.age.height)