-
Notifications
You must be signed in to change notification settings - Fork 0
/
zsd.txt
59 lines (50 loc) · 2.32 KB
/
zsd.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
1.MVC EFcode first模式
2.WEBAPI 包括授权,序列化,特性路由
3.mysql和mssql的存储过程,视图,函数,sql关键词(优先mssql)
4.RammbitMq
5..net常规概念和关键词,反射,控制器,筛选器,路由,生命周期,构造函数等等常用
6.委托,action function,lamde表达式、linq
7.常见设计模式:观察者模式。单例模式,工厂模式,抽象工厂
8.IOC
9.熟悉下Dapper
10.泛型仓储模式
11.git命令
构造函数:
定义:类的 构造函数 是类的一个特殊的成员函数,当创建类的新对象时执行。
类型:
1.实例构造函数
2.私有构造函数
3.静态构造函数
3.1.静态构造函数既没有访问修饰符,也没有参数。
3.2.在创建第一个实例或引用任何静态成员之前,将自动调用静态构造函数来初始化类,也就是无法直接调用静态构造函数,
也无法控制什么时候执行静态构造函数。
3.3.一个类只能有一个静态构造函数,最多只能运行一次。
3.4.静态构造函数不可以被继承。
3.5.如果没有静态构造函数,而类中的静态成员有初始值,那么编译器会自动生成默认的静态构造函数。
注意点:
1.父类的构造函数总是在子类之前执行的。既先初始化静态构造函数,后初始化子类构造函数。
2.某一个子类只要继承了父类,不管子类的构造函数怎么写,都是先走父类的构造函数
3.base代表父类,this代表自己
构造函数内引用父类使用:base ,自己引用自己的构造函数使用:this
在一个构造函数内能引用父类或者自己本身其他的构造函数
4. 如果不对构造函数使用访问修饰符,则在默认情况下它仍为私有构造函数。
析构函数:
定义:类的 析构函数 是类的一个特殊的成员函数,当类的对象超出范围时执行。
析构函数用于在结束程序(比如关闭文件、释放内存等)之前释放资源。析构函数不能继承或重载。
使用方法在构造函数前加~
单例模式:
1.懒汉模式
懒汉模式采取加锁和双重判断
优缺点:懒汉式单例类在第一次使用时创建,无须一直占用系统资源,实现了延迟加载,
但是必须处理好多个线程同时访问的问题,特别是当单例类作为资源控制器,
在实例化时必然涉及资源初始化,而资源初始化很有可能耗费大量时间,
这意味着出现多线程同时首次引用此类的机率变得较大,需要通过双重检查锁定等机制进行控制,
这将导致系统性能受到一定影响。
2.饿汉模式
饿汉模式是直接使用静态私有构造函数,防止被实例化,然后内部定义个静态和可读的类变量。
优缺点:饿汉式单例类在类被加载时就将自己实例化,它的优点在于无须考虑多个线程同时访问的问题,
可以确保实例的唯一性;从调用速度和反应时间角度来讲,由于单例对象一开始就得以创建,
因此要优于懒汉式单例。但是无论系统在运行时是否需要使用该单例对象,
由于在类加载时该对象就需要创建,因此从资源利用效率角度来讲,
饿汉式单例不及懒汉式单例,而且在系统加载时由于需要创建饿汉式单例对象,加载时间可能会比较长。
在暴露一个公共方法对外返回该实例