04 类、对象、类成员简介

1 类(class)是现实世界事物的模型

        (1)类是对现实世界事物进行抽象所得到的结果

                ①事物包括“物质”(实体)与“运动”(逻辑)

                ②建模是一个去伪存真(只保留程序中用得到的东西)、由表及里(表:接口;里:封装起来的东西)的过程

2 类与对象的关系

        (1)什么时候叫“对象”,什么时候叫“实例”

                ①对象也叫实例,是类经过“实例化”后得到的内存中的实体

                ②依照类,我们可以创建对象,这就是“实例化”

                ③使用new操作符创建类的实例               

                        ·Form是一个类(表示表格),只有使类实例化才可以进行显示

        (2)引用变量与实例的关系

                 ①myForm就是一个引用变量

                ②可以用一个引用变量引用这个实例;也可以用多个引用变量来引用这一个实例,但是访问引用变量的时候都是访问的同一个实例。

3 类的三大成员

        (1)属性(Property)

                ·存储数据,组合起来表示类或对象当前的状态

        (2)方法(Method)

                ·由C语言中的函数(function)进化而来,表示类或对象“能做什么”

                ·工作中90%时间都是在与方法打交道,因为他是“真正做事”、“构成逻辑”的成员

        (3)事件(Event)

                ·类或对象通知其他类或对象的机制,为C#所特有

                ·善用事件机制非常重要

         (4)三大成员在MSDN文档中的位置:

        (5)通过示例程序来理解上面的三个概念

                ①某些特殊类或对象在成员方面侧重点不同

                        ·模型类或对象重在属性,如Entity Framework

                        ·工具类或对象重在方法,如Math,Console

                        ·通知类或对象重在事件,如Timer

4 类的静态成员与实例成员

        (1)静态(Static)成员在语义上表示它是“类的成员”

        (2)实例(非静态)成员在语义上表示它是“对象的成员”

        (3)绑定(Binding)指的是编译器如何把一个成员与类或对象关联起来

                ·“.”操作符-----成员访问操作符

                ·Console.WriteLine指的是类.静态成员

                ·form.Text指的是实例.实例成员

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
上百节课详细讲解,需要的小伙伴自行百度网盘下载,链接见附件,永久有效。 课程亮点: 1,知识体系完备,从小白到大神各阶段读者均能学有所获。 2,生动形象,化繁为简,讲解通俗易懂。 3,结合工作实践及分析应用,培养解决实际问题的能力。 4,每一块知识点, 都有配套案例, 学习不再迷茫。 课程简介 第一章 环境搭建 00.导学 01.Scala简介 02.Scala程序和Java程序对比 03.Scala环境搭建 04.Scala解释器 05.案例_做最好的自己 第二章 变量和数据类型 00.导学 01.输出语句和分号 02.Scala中的常量 03.Scala中的变量 04.字符串的定义 05.惰性赋值 06.标识符 07.数据类型 08.类型转换 09.值类型和String类型之间的相互转换 10.键盘录入功能 11.案例_打招呼 第三章 运算符 001.导学 01.算术运算符 02.赋值运算符 03.关系运算符 04.逻辑运算符 05.进制和8421码 06.原反补码计算规则 07.位运算符 08.案例_交换变量值 第四章 流程控制结构 00.导学 01.流程控制结构之顺序结构 02.选择结构之单分支结构 03.选择结构之双分支结构 04.选择结构之多分支结构 05.选择结构之注意事项 06.选择结构之嵌套分支 07.扩展_块表达式 08.for循环之简单循环 09.for循环之循环嵌套 10.for循环之守卫 11.for循环之推导式 12.while循环 13.do.while循环 14.break和continue的用法 15.综合案例_九九乘法表 16.综合案例_模拟登陆 第五章 方法和函数 00.导学 01.方法入门 02.返回值的类型推断 03.惰性方法 04.方法参数 05.方法调用方式 06.函数入门 07.方法和函数的区别 08.案例_打印nn乘法表 第六章 面向对象入门 00.导学 01.类和对象的相关概念 02.创建类和对象 03.创建类和对象的简写形式 04.定义和访问成员变量 05.使用下划线初始化成员变量 06.定义和访问成员方法 07.访问权限修饰符 08.主构造器 09.辅助构造器 10.定义单例对象 11,在单例对象中定义方法 12.如何定义程序的主入口 13.定义伴生对象 14.private[this]访问权限 15.apply()方法 16.案例_定义工具类 第七章 继承 00.导学 01.继承入门 02.单例对象的继承 03.方法重写 04.isInstanceOf和asInstanceOf 05.getClass和ClassOf关键字 06.抽象类入门 07.抽象字段 08.匿名内部类 09.动物类案例 第八章 特质 00.导学 01.类继承单个特质 02.类继承多个特质 03.单例对象继承特质 04.演示trait中的成员 05.动态混入trait 06.使用trait实现适配器设计模式 07.使用trait实现模板方法模式 08.使用trait实现职责链模式 09.trait的构造机制 10.trait继承class 11.案例_程序员类 第九章 包_样例类_样例对象 00,导学 01.包的简介和格式 02.包的作用域 03.包对象 04.包的可见性 05.包的引入 06.样例类入门案例 07.样例类的默认方法 08.样例对象 09.案例_计算器 第十章 常用容器(数组, 元组, 集合等) 00.导学 01.创建定长数组 02.创建变长数组 03.变长数组的增删改操作 04.遍历数组 05.数组的常用算法 06.创建元组对象 07.访问元组中的元素 08.创建不可变列表 09.创建可变列表 10.可变列表的常用操作 11.列表的常用操作之基础操作 12.列表的常用操作之扁平化 13.列表的常用操作之拉链与拉开 14.列表的常用操作之转换字符串 15.列表的常用操作之求并集,交集,差集 16.创建不可变集 17.不可变集的常见操作 18.创建可变集 19.创建不可变Map 20.创建可变Map 21.Map的基本操作 22.使用迭代器遍历集合 23.函数式编程之foreach 24.函数式编程之简化函数定义 25.函数式编程之映射 26.函数式编程之扁平化映射 27.函数式编程之过滤 28.函数式编程之默认排序 29.函数式编程之指定字段排序 30.函数式编程之自定义排序 31.函数式编程之分组 32.函数式编程之聚合操作 33.函数式编程之折叠操作 34.综合案
NET程序员必备的开发利器.NET Reflector 简介   程序集,作为.NET时代的动态链接库,蕴藏了太多的软件秘密。为此,Visual Studio内置的ILDASM成为最初挖掘程序集的上佳工具。但自从Reflector出现后,ILDASM相形见拙。因为,Reflector能提供更多的程序集信息,而且是免费的工具。   如今,在Visual Studio.NET中编译源代码(无论是VB还是C#)时,编译器都会将高级源代码翻译成MSIL,即“微软中间语言”,而不是特定的机器指令。具有更多安全性、版本控制、共享能力与其它相关元数据的中间语言(IL),是包在一个或多个DLL或可执行文件中的。   基于ILDASM检查程序集中的IL有时很有用,但它要求我们熟悉MSIL。通常,比起IL,大多数开发人员对像C#或Visual Basic这样的高级程序设计语言更为熟悉。   Reflector的出现使.NET程序员眼前豁然开朗,因为这个免费工具可以将.NET程序集中的中间语言反编译成C#或者Visual Basic代码。除了能将IL转换为C#或Visual Basic以外,Reflector还能够提供程序集中类及其成员的概要信息、提供查看程序集中IL的能力以及提供对第三方插件的支持。 Reflector是由微软员工Lutz Roeder编写的免费程序。这个软件经常更新,你可以在http://www.aisto.com/roeder/dotnet下载最新的版本。在本文成文之时,Reflector的最新版本为6.5.0.135,仅有2.8M大小。只要双击下载后的Reflector.exe文件即可运行Reflector。   默认情况下,Reflector会打开一组公共程序集(mscorlib、System、System.Data、System.Drawing等等)。每个打开的程序集都列在Reflector的主窗口中。单击程序集旁边的+图标可以展开树结构并展示程序集的命名空间。每个命名空间旁边都有一个相关的+图标,单击这个图标将显示这个命名空间内的类。除此以外,还可以展开每个类,显示类的成员:事件、字段、方法与属性。   要想查看其它程序集(包括我们自己创建的程序集)的细节,你可以使用菜单命令“File→Open”。然后,浏览到想要查看的程序集。只要选择了有效的.NET程序集,这个程序集就可以在Reflector的主窗口中与其它默认程序集共同显示。要想从Reflector的主窗口中删除程序集,只需右击程序集并选择“Close”。   有了Reflector.VisualStudio插件(正版,下面是根据在线资料介绍),Reflector可以寄在Visual Studio中Reflector不仅是一个对象浏览器、反汇编器,包裹在同一个程序中的所有功能还可以寄于Visual Studio中。 Reflector是一款比较强大的反编译工具,相信很多朋友都用过它,但reflector本身有很多局限性,比如只能一个一个的查看方法等, 首先介绍一下 Filegenerator,FileGenerator插件的作用是:根据dll文件,把里面的源文件导出成文件,导出来的文件除了没有注释,变量名也 变了,其它的可谓是没有差别。对于一些比较好的控件,如果不是开源的,完全可以导出成文件,然后自己加上注释,少许修改,很好的利用起来 具体的初始化设置方法:点击View->Add-Ins...,弹出一个窗口,然后点击Add->选择文件夹里面的:"FileGenerator.dll",点击close. 然后回到Reflector窗口,Tool->Generator File(s)... 右边就出现了插件的窗口,选中左边的dll文件,点击右边的导出文件,源代码就全部导出来了! 另一个插件Reflector.FileDisassembler.dll设置方法也和这个一样,另外再提供一些Reflector的相关插件下载, Reflector是一款比较强大的反编译工具,相信很多朋友都用过它,但reflector本身有很多局限性,比如只能一个一个的查看方法等,但 幸好reflector支持插件功能目前网上有很多reflector的插件,本人找取了两个应用范围很广,并且广受好评的插件: Reflector.FileDisassembler和Reflector.FileGenerator和Reflector进行了整合,放在了一个压 缩包中,大家可以直接解压缩后就开始使用,其中FileGenerator在网上没有现成dll,本人编译后将其取出,放在了压缩包中,一直在苦苦找寻的 朋友这次可以拿来直接用了 本压缩包中Reflector.exe已经升级为最新的6.5版本,具体的使用方法不多说了,只简单介绍一下本压缩包的使用步骤: 先 下载本压缩包并解压缩,运行其中的Reflector.exe(主程序),初次运行会弹出错误提示对话框,因为引用的两个插件DLL是按照我本地实际情况 配置的,所以你还需要根据你的实际情况来从新配置一下,方法很简单,我们拿引用FileGenerator.dll来做一个范例, 首先介绍一下 Filegenerator,FileGenerator插件的作用是:根据dll文件,把里面的源文件导出成文件,导出来的文件除了没有注释,变量名也 变了,其它的可谓是没有差别。对于一些比较好的控件,如果不是开源的,完全可以导出成文件,然后自己加上注释,少许修改,很好的利用起来。(不开源的 dll,用起来也不放心啊) 具体的初始化设置方法:点击View->Add-Ins...,弹出一个窗口,然后点击Add->选择文件夹里面的:"FileGenerator.dll",点击close. 然后回到Reflector窗口,Tool->Generator File(s)... 右边就出现了插件的窗口,选中左边的dll文件,点击右边的导出文件,源代码就全部导出来了! 另一个插件Reflector.FileDisassembler.dll设置方法也和这个一样,另外再提供一些Reflector的相关插件下载
NET程序员的开发利器.NET Reflector 一、 简介   程序集,作为.NET时代的动态链接库,蕴藏了太多的软件秘密。为此,Visual Studio内置的ILDASM成为最初挖掘程序集的上佳工具。但自从Reflector出现后,ILDASM相形见拙。因为,Reflector能提供更多的程序集信息,而且是免费的工具。   如今,在Visual Studio.NET中编译源代码(无论是VB还是C#)时,编译器都会将高级源代码翻译成MSIL,即“微软中间语言”,而不是特定的机器指令。具有更多安全性、版本控制、共享能力与其它相关元数据的中间语言(IL),是包在一个或多个DLL或可执行文件中的。   基于ILDASM检查程序集中的IL有时很有用,但它要求我们熟悉MSIL。通常,比起IL,大多数开发人员对像C#或Visual Basic这样的高级程序设计语言更为熟悉。   Reflector的出现使.NET程序员眼前豁然开朗,因为这个免费工具可以将.NET程序集中的中间语言反编译成C#或者Visual Basic代码。除了能将IL转换为C#或Visual Basic以外,Reflector还能够提供程序集中类及其成员的概要信息、提供查看程序集中IL的能力以及提供对第三方插件的支持。   二、 下载与运行Reflector   Reflector是由微软员工Lutz Roeder编写的免费程序。这个软件经常更新,你可以在http://www.aisto.com/roeder/dotnet下载最新的版本。在本文成文之时,Reflector的最新版本为5.0.35.0,仅有1M大小。只要双击下载后的Reflector.exe文件即可运行Reflector。   默认情况下,Reflector会打开一组公共程序集(mscorlib、System、System.Data、System.Drawing等等)。每个打开的程序集都列在Reflector的主窗口中。单击程序集旁边的+图标可以展开树结构并展示程序集的命名空间。每个命名空间旁边都有一个相关的+图标,单击这个图标将显示这个命名空间内的类。除此以外,还可以展开每个类,显示类的成员:事件、字段、方法与属性。   要想查看其它程序集(包括我们自己创建的程序集)的细节,你可以使用菜单命令“File→Open”。然后,浏览到想要查看的程序集。只要选择了有效的.NET程序集,这个程序集就可以在Reflector的主窗口中与其它默认程序集共同显示。要想从Reflector的主窗口中删除程序集,只需右击程序集并选择“Close”。   三、 使用Reflector反汇编程序集   提供基本的程序集是Reflector唾手可得的功能,然而,Reflector真正的威力体现在它的反汇编能力。只要浏览到类级的成员,就可以通过Tools菜单中的Disassembler项(或在该项上单击右键)反汇编此成员。这将打开第二个窗格,以C#、Visual Basic、Delphi或者IL显示反汇编后的内容。图2以C#语言展示了对SmtpClient类中Abort方法的反汇编结果。   有了Reflector的反编译功能,要研究.NET框架基类库就容易多了。我们完全可以在没有源代码的情况下研究我们所创建或者正在使用的程序集相应源代码。   不用太担心,你自己的.NET应用程序还有其它受保护措施。但是,想阻止别人查看.NET程序集的IL(继而反编译成C#或者Visual Basic)是不可能的,但你可以使用“混淆”技术使IL变得混乱。目前,市场上有许多.NET混淆产品,比如:PreEmptive Solution的Dotfuscator、WiseOwl的Dmeanor以及Remotesoft的.NET Obfuscator等。   四、 Reflecator的其它功能   除了作为对象浏览器与反汇编器之外,Reflector还可以显示类与其成员的调用与被调用图、提供单键访问Google或MSDN搜索的能力并提供了允许第三方开发人员为Reflector创建插件的框架。   要查看调用或被调用图,只需要在树视图中选择一个成员,访问Tools菜单,选择Call Graph或Callee Graph选项即可。Call Graph会列出所选项所调用的成员,而Callee Graph列出调用所选项的成员。   通过使用插件,Reflector的功能可以得到进一步扩展。目前有能显示程序集依赖图、自动加载当前运行中的程序集、输出整个程序集的反汇编内容以及在Visual Studio中作为Reflector的宿主等的插件。还有更多插件都列在http://www.codeplex.com/reflectoraddi
### 回答1: 可以通过以下步骤创建类的对象并调用成员方法: 1. 定义一个类,包含成员变量和成员方法。 2. 使用类名创建对象,例如:ClassName objectName = new ClassName(); 3. 调用对象成员方法,例如:objectName.methodName(); 注意:在调用成员方法时,需要使用对象名来调用,而不是类名。 ### 回答2: 创建类的对象是指根据类的定义,使用类名加括号的形式来实例化一个对象。例如,如果有一个类叫做"Person",可以通过下面的代码来创建一个"Person"类的对象: Person person = new Person(); 这样就创建了一个名为"person"的"Person"类的对象。 调用成员方法是指通过对象来访问类中定义的方法。例如,如果在"Person"类中定义了一个名为"sayHello()"的方法,可以通过下面的代码来调用这个方法: person.sayHello(); 这样就会执行"person"对象中的"sayHello()"方法的代码。 类的对象通过调用成员方法实现了一个具体的功能。在上述的例子中,调用"person"对象的"sayHello()"方法可能会输出一个问候语。 通过创建类的对象,我们可以调用各种成员方法来实现类所提供的各种功能。不同的对象可以调用相同的方法,但是它们的执行结果可能会不同,这是因为对象具有不同的属性和状态。 总之,创建类的对象和调用成员方法是面向对象编程的基础之一。通过创建对象,我们可以使用类所定义的方法来完成各种任务,并且可以根据具体的需求对对象进行操作和处理。这种方式使得程序的设计更加灵活和可扩展。 ### 回答3: 创建类的对象是指根据类的定义,使用关键字"new"来实例化一个类的对象,以便可以调用和访问该类中定义的成员方法和成员变量。 创建类的对象的步骤如下: 1. 首先,需要使用关键字"class"来定义一个类,其中包含了类的成员方法和成员变量的定义。 2. 然后,通过在前面加上类名和关键字"new",可以实例化一个类的对象。例如,如果类的名字是"Person",则可以使用"Person p = new Person();"来创建一个名为"p"的Person类的对象。 3. 创建对象后,可以通过对象名以及成员运算符"."来调用对象成员方法。例如,如果Person类中有一个成员方法叫做"sayHello",则可以使用"p.sayHello();"来调用该方法。 调用成员方法的作用是为了执行该方法中定义的具体操作,也可以通过方法的参数传递和返回值得到方法的结果。 调用成员方法的步骤如下: 1. 首先,需要先创建类的对象,通过调用成员方法的对象来执行操作。 2. 然后,通过对象名以及成员运算符"."来调用要执行的成员方法。例如,如果想调用一个Person类中的成员方法叫做"sayHello",则可以使用"p.sayHello();"来实现。 3. 调用该方法后,程序将执行该方法中定义的操作,并返回方法中的结果。 总结起来,创建类的对象是为了能够调用和访问类中定义的成员方法和成员变量。通过使用关键字"new"可以创建类的对象。而调用成员方法则是为了执行该方法中的操作,并通过方法的参数传递和返回值得到方法的结果。使用对象名和成员运算符"."可以调用成员方法。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值