C#学习笔记-基础知识篇(不定期更新)_.NET_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > .NET > C#学习笔记-基础知识篇(不定期更新)

C#学习笔记-基础知识篇(不定期更新)

 2017/12/7 16:42:35  可达鸭要进化  程序员俱乐部  我要评论(0)
  • 摘要:1.父类必须包含构造函数么?父类必须要有一个构造函数,有参无参都可以。构造函数是对象的基本,没有构造函数就没有对象,若父类中显示的有参数的构造函数,在子类继承就必须写一个构造函数来调用父类的构造函数。如果父类中有没有参数的构造函数,在子类中可以不显示的写父类的构造函数,系统会自动调用没有参数的构造函数。2.Assembly.CreateInstance方法1usingSystem.Reflection;23namespaceAssemblyTest4{5classProgram6
  • 标签:笔记 C# 学习 基础知识 学习笔记

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个字节可以存放一个汉字国标码。

 字长:

  计算机的每个字所包含的位数称为字长。计算机的字长是指它一次可处理的二进制数字的数目。计算机处理数据的速率,自然和它一次能加工的位数以及进行运算的快慢有关。

  字长是衡量计算机性能的一个重要因素。

 

发表评论
用户名: 匿名