1.父类必须包含构造函数么?
父类必须要有一个构造函数,有参无参都可以。
构造函数是对象的基本,没有构造函数就没有对象,若父类中显示的有参数的构造函数,在子类继承就必须写一个构造函数来调用父类的构造函数。
如果父类中有没有参数的构造函数,在子类中可以不显示的写父类的构造函数,系统会自动调用没有参数的构造函数。
2.Assembly.CreateInstance方法
class="code_img_closed" src="/Upload/Images/2017120716/0015B68B3C38AA5B.gif" alt="" />logs_code_hide('f2fd0068-b944-4b9f-aa22-d54574431d12',event)" src="/Upload/Images/2017120716/2B1B950FA3DF188F.gif" alt="" />1 using System.Reflection; 2 3 namespace AssemblyTest 4 { 5 class Program 6 { 7 static void Main(string[] args) 8 { 9 Test t; 10 Test e; 11 Test s; 12 string assembleName = "AssemblyTest"; 13 14 //Assembly.CreateInstance 方法 (String typeName) 15 t = (Test)Assembly.Load(assembleName).CreateInstance(assembleName + ".TestOne"); 16 t.LittleTest(); 17 18 //Assembly.CreateInstance 方法 (String, Boolean) 19 //使用可选的区分大小写搜索,从此程序集中查找指定的类型,然后使用系统激活器创建它的实例。 20 e = (Test)Assembly.Load(assembleName).CreateInstance(assembleName + ".TestTwo",false); 21 e.LittleTest(); 22 23 //Assembly.CreateInstance 方法 (String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[]) 24 //使用可选的区分大小写搜索并具有指定的区域性、参数和绑定及激活特性,从此程序集中查找指定的类型,并使用系统激活器创建它的实例。 25 s = (Test)Assembly.Load(assembleName).CreateInstance(assembleName + ".TestThree", false, BindingFlags.Default, null, null, null, null); 26 s.LittleTest(); 27 28 Console.Read(); 29 } 30 } 31 abstract class Test 32 { 33 public abstract void LittleTest(); 34 } 35 36 37 class TestOne : Test 38 { 39 public override void LittleTest() 40 { 41 Console.WriteLine("我是测试1"); 42 } 43 } 44 45 class TestTwo : Test 46 { 47 public override void LittleTest() 48 { 49 Console.WriteLine("我是测试2"); 50 } 51 } 52 53 class TestThree : Test 54 { 55 public override void LittleTest() 56 { 57 Console.WriteLine("我是测试3"); 58 } 59 } 60 61 62 }View Code
适用:在程序集中查找指定的类型,并使用系统激活器创建它的实例。
需要using System.Reflection;
(备注:来源于建造者模式的附: http://www.cnblogs.com/Aries-rong/p/7647666.html/ )
3.ushort[]与byte[]相互转换
4.字节、位、比特概念梳理
位(bit):
表示二进制位。位是计算机内部数据存储的最小单位,11010100是一个8位二进制数。一个二进制位只可以表示0和1两种状态。
字节(byte):
字节是计算机中数据处理的基本单位。计算机中以字节为单位存储和解释信息,规定一个字节由八个二进制位构成,即1个字节等于8个比特(1byte=8bit)。通常1个字节可以存入一个ASCII码,2个字节可以存放一个汉字国标码。
字长:
计算机的每个字所包含的位数称为字长。计算机的字长是指它一次可处理的二进制数字的数目。计算机处理数据的速率,自然和它一次能加工的位数以及进行运算的快慢有关。
字长是衡量计算机性能的一个重要因素。