大三在校生的传智120天的1200小时.net(一)

.net框架包括类库和CLR(公共语言运行库)。C#语言经过csc(编译器)翻译成MSIL(中间语言),经过CLR生成机器语言。

IDE指的是你是用的开发工具并包括其版本。

类中主要包括字段,属性,方法,事件等。字段用于存储数据,属性可保护字段,取值执行get,赋值执行set,例如字符串的不可变性,字符串可以假设成字符数组,

但其并不能通过字符数组的索引来改变字符串的值,通过F12转到定义可以看见该属性,只有get,并没有set,所以属性保护了字符串的不可变,不过可以遍历字符串存到字符数组。

值类型的值在栈中,引用类型的值在堆中,地址在栈中,所以当写一个函数修改数组值时,不需要返回值,因为传递的是地址。在项目中自定义的类也是引用类型,对象存在堆中。

类是不占内存的,对象是占内存的;new 做了三件事:在内存中开辟空间,在开辟的控件创建对象,调用对象的构造函数。

构造函数用于初始化对象,初始化对象就是为对象的每一个属性赋值。

静态方法一定要用类名来调用,例如Convert.(方法)           string.IsNullOrEmpty()   静态方法不能被实例化 通过反编译工具查看convert属于abstract,抽象类禁止实例化。

静态方法未必要写在静态类当中。

把一堆成员写到一个类里叫做封装。

设计类时,有很多共同成员,代码冗余,此时用新的类将这些共有代码单独封装,作为其他类的父类,叫做继承。

通过调试,子类并非继承父类的构造函数,而是自动调用了父类的构造函数,由此创建父了类对象并初始化数据,才能访问非静态成员。

this代表当前类对象,base不是父类对象,而是父类的引用,通过这个引用才能访问父类。子类继承的是父类的属性和方法。

判断是否为相同对象:object.ReferenceEquals(p1,p2);

时间: 2024-10-11 20:32:22

大三在校生的传智120天的1200小时.net(一)的相关文章

大三在校生的传智120天的1200小时.net(二)

前几天帮人做个社交网站,还是老套的控件方式,不过学习了ajax和一般处理程序ashx后,也用在了里面一些,今天回来继续写博客.继续上次总结下基础知识,学的内容多,总结的可能比较杂乱,分条总结为平时能自己看看吧. 1,文件流FileStream比File类速度快,不占用内存.操作大文件要用文件流. 2,文件流资源,GC不会帮我们释放,需要手动释放. 3,当创建对象的过程写在using中,会自动释放资源. 4,如果在子类中,将成员名称写的和父类中的相同,这样会隐藏子类从父类那里继承过来成员,带来的效

大三在校生的传智120天的1200小时.net(十) 关于JQuery(最后一点动画效果*)

1,$(':radio').val(['1','2','3']);//特殊写法,把值为1 2 3的都选中. 2,math.abs(len)取绝对值 3,按钮高亮显示,一般是配置两个按钮,一个普通的,一个高亮度的(比如普通样式按钮坐标为100,100. 高亮样式按钮坐标为120,120),当鼠标经过,js改变css background-position:100 -100;动态变为120 -120.(至于为什么当你在很多网站要保存一个小图标,却保存成了很大的图片,就是因为网站的图标显示离痛了bac

大三在校生的传智120天的1200小时.net(五)

1,js是一门解释型语言,无需编译,编写js要知道当前对象有什么成员,未必所有成员都能点出来. 2,js大小写敏感,严格区分大小写. 3,弱类型语言,声明用var,字符串推荐使用单引号. 4,==要先转型,后比较值.===叫做严格判断,判断类型和值:(switch case是严格判断) 5,js中没有局部作用域: 6,js代码对齐方式,要使用默认排版方式: 7,js中没有方法重载,默认选择最后一个. 8,argument.length可以获得该方法传进来的参数的个数. 9,闭包效率低(定义在一个

大三在校生的传智120天的1200小时.net(八) 关于JQuery

匿名函数在尤其重要 1,jQuery就是js语法写的一些函数,内部仍然用js实现的,所以并不是代替js的.使用jQuery的代码,编写的jQuery的拓展插件仍需要js技术,jq本身就是一堆js函数:write less do more 2,要向使用jq的方法,必须通过$对象.只有普通的dom封装成jq对象,才能调用jq各种方法 $是jq简写,代码中可以使用jQuery代替$ 3,写注释,后续jq代码会越来越多,注释是必要的 4,jq文件普通版本是开发使用,压缩版本是发布使用 5,dom对象可以

大三在校生的传智120天的1200小时.net(十四) 关于easyUI的模态对话框

会用easyUI的模态对话框会是我们的开发更加简洁,只需下载这个插件,把需要的文件拖到项目中,下面展示一个easyUI的模态对话框,以及使用方法和属性.这里是一个常用功能小展示,试试上easyUI自带的说明文档非常全面,*****学会查看文档很重要,看几次就会熟练***** <script type="text/javascript" src="../Script/jquery-1.8.3.js"></script> <script s

大三在校生的传智120天的1200小时.net(十四) 关于jq ajax封装以及error的报错参数

jq的ajax完整版本 $.ajax({ url: "GetCityByPId.ashx", data: {pId:pid}, dataType: "JSON", type: "GET", cache:false, success: function (data) { $("#city").empty(); for (var key in data) { var cityId = data[key].CityId; var c

大三在校生的传智120天的1200小时.net(九) 关于JQuery

整理jq基础常用(过于基础别喷): 1, $('div input[name]').css('','');//获取层中有name属性的标签 $('div input[name=txtname]').css('','');//获取层中有name属性的,并且属性值为txtname的标签 $('div input[name!=txtname]').css('','');//获取层中有name属性的,并且属性值不为txtname的input标签 $('div input[name^=n]').css('

大三在校生的传智120天的1200小时.net(七) 关于js性能

1,声明变量要赋初值2,尽量避免声明全局变量,可以减少与系统的重名3,当编写大量js代码时,难免会遇到命名冲突,这是可以通过模拟命名空间方式 来避免冲突4,尽量避免使用全局变量,搜索全局变量是会一层一层的搜索每个作用域范围, 耗时,低效.5,使用减值循环或者优化循环条件,不要再循环条件中写i<xxx.Length,而要用一 个变量来代替,i<len.因为每次循环都会执行计算length,var i=0也拿到外面 去.6,避免使用eval(“alert(10):”) setInterval(&q

大三在校生的传智120天的1200小时.net(六)

首先推荐一个小插件:W3Cfuns前端开发工具箱 整理一些杂乱的知识点. 1,Dom用于操作html元素 2,window.location.reload();//刷新当前页********** 3,取消默认事件 :return false; 举例:防止复制 document.body.oncopy=function(){ alert(‘谁让你复制的 交钱了吗’); return false;} 4,clipboardData.getData('text')//获取粘贴板内容,text是表示文本