----C#推进孙文教程(四)
2023-12-09 14:42:45
大家好。我叫SUNWEN。Huashi,武汉。哈哈,下午,我很难在下午出去玩归元寺。去归元寺的门票是十元,不贵。看一看要花很多时间。 好的,让我们谈谈要点。这一次我想告诉你的是C #属性。什么是它的属性,说我是男人,男人是我的一个属性。我是一年级新生,是我的一个学生。Nature is an object. 这很简单,是吗!这里,我举了两个例子,第一个例子,了解如何声明一个属性可以被修改,另一个例子是建立抽象属性(抽象),并解释子类如何丢弃它。好吧,我们开始吧。 例1: 000: / / person.cs性质 使用系统001; 002:阶级人物 { 003: 004:私人String myName= = / ; 005:私有变量myAge = 0; 006: 属性名007:字符类型语句 008:公共字符串名 { 009: 010:得到 { 011: 012:返回我的名字; 013:} 014:设定 { 015: 016:我=价值; 017:} 018:} 019: 020的年龄属性:声明一个int类型 021:公共年龄 { 022: 023:得到 { 024: 025:返回myAge; 026:} 027:设定 { 028: 029:myAge =价值; 030:} 031:} 032: 033:公共覆盖的字符串() { 034: 035:返回name =+名称+ 036:} 037: 038:公共静态空主() { 039: 040:Console.WriteLine(简单性); 041: 示例042:构建一个 043:人=新人(); 044: 045:打印出它的属性 046:Console.WriteLine(个人资料- { 0 } 047: 048:一些属性集 049:人。名称=乔; 050:人,年龄= 99岁; 051:Console.WriteLine(个人资料- { 0 } 052: 053:年龄 054:人,年龄= 1岁; 055:Console.WriteLine(个人资料- { 0 } 056:} 057:} 这个例子的输出是: 简单的性质 个人详细信息-名称= A / A,年龄= 0 个人详细信息-姓名=乔,年龄= 99 个人详细信息-姓名=乔,年龄= 100 嗯,我又起来了。我昨天写的,然后上床睡觉了,哈哈。现在是五一节的第二天。我能看到今天我能写多少篇文章,我昨天写了两篇。 我们可以从上面的程序,一个类的属性设置,使用VB的概念,和java是不一样的。(这是M,TMD!)有的朋友可能会疑惑为什么我们可以用console.writeline(人)打印对象。真正的原因很简单,因为在java中,当用印刷方法进行了调整,对象自动调用它的toString(()在java是toString,TMD,几乎错误!)在33行中,我们可以看到这个方法的影子,覆盖关键字可能覆盖父类的方法,这是一个有点冗余的东西,我们可以看到对象的属性是由a(get)和集合(当然)组合起来完成的,并且有一个值。添加这个东西,你也可以写访问控制属性的一个读/刚刚。get(get)和get()可以被简单地删除,例如,不写属性,不设置(),如果不读,不获取()条。我必须感觉到C #没有灵活性,java这一点。 第二例: 这个例子说明了如何建立抽象属性(抽象),什么是抽象属性,即所谓的抽象属性,是…(嗯,每次。这么多废话!FT)一个抽象类不提供属性访问过程,他可以在下面的子类中被忽略。三个文档的例子,你需要编译它们才能得到结果,它们是: abstractshape.cs:形态类,包含一个地区抽象属性 子shapes.cs:形状 shapetest.cs:显示程序。 编写这些程序,运行:CSC abstractshape.cs shapes.cs shapetest.cs是好的。运行后,它会产生shapetest.exe可执行程序。 000: / / abstractshape.cs性质 001:使用系统; 002: 003:公共抽象类的形状 { 004: 005:一个字符串; 006: 007:公共形状(字符串S) { 008: 009:id;这叫做集合生成器的id属性。 010:} 011: 012:公共字符串ID { 013: 014:得到 { 015: 016:返回一个; 017:} 018: 019:设定 { 020: 021:不存在=价值; 022:} 023:} 024: 025:公共抽象双区域 { 026: 027:得到; 028:} 029: 030:公共覆盖的字符串() { 031: 032:返回id区域=+双。格式(区域,F); 033:} 034:} 这个程序其实很简单,,当类的对象被创建和初始化的一部分,007-010,设置参数为对象的id属性。然后举一个操作的例子。事实上,我们可以抽象的属性和接口(接口)相比,java。他们只提到方法的名字拱门,但是这个方法不提供内容。像这个抽象属性的区域,有一个get,但是它在内容中没有指定get方法(它可能不被称为方法),那就是做什么get的东西。这个东西,由它的子类来做。 第二个文件:在这个文件中,一个类覆盖了(重写)区域属性。 000: / / shapes.cs性质 001:公共广场广场:外形 { 002: 003:私有的身边; 004: 005:公共广场(int,字符串ID):基(id) { 006: 007:我身边=侧; 008:} 009: 010:公共覆盖双区域 { 011: 012:得到 { 013: 014:回到我身边*我身边; 015:} 016:} 017:} 018: 019:公共课圈:形状 { 020: 021:私有myradius; 022: 023:公共圆(int半径,字符串ID):基(id) { 024: 025:myradius =半径; 026:} 027: 028:公共覆盖双区域 { 029: 030:得到 { 031: 032: return myRadius * myRadius * System.Math.PI; 033:} 034:} 035:} 036: 037:公共类矩形:形状 { 038: 039:私有mywidth; 040:私有myheight; 041: 042:公共矩形(int宽度,int高度,字符串ID):基(id) { 043: 044:mywidth =宽度; 045:myheight =高度; 046:} 047: 048:公共覆盖双区域 { 049: 050:得到 { 051: 052:返回mywidth * myheight; 053:} 054:} 055:} 这个例子有点困惑:我们是什么,如果它是遗传的,相当于java扩展。我想.我们先看一看。 以下第三个文件是一个测试文件。这很简单。看看它。 000: / / shapetest.cs性质 001:TestClass类 { 002: 003:公共静态空主() { 004: 005:形状{ }形状= { 006: 007:新广场(5,1平方# ), 008:新的圈子(3,圈# 1 ), 009:新的矩形(4, 5,矩形# 1 ) 010:}; 011: 012:system.console.writeline(形状集合); 013:foreach(形状的形状) {014: 015:System.Console.WriteLine(S); 016:} 017: 018:} 019:} 从这个例子中,符号确实是扩展的意思,是继承。继承是什么意思,它是一个孩子,下面句子的意思。例如,sunwenson延伸Sunwen,这是sunwenson类继承Sunwen,sunwenson这类事的孙文类,你可以添加和删除Sunwen的东西。如此简单,但它是现代开发中的一项重要技术,因为它可以极大地提高可重用性。唉,只有大三年纪的人说,我没有资格。哈哈. 该程序的输出是: 形状集合 1平方#面积= 25 圆# 1面积= 28.27 矩形# 1面积= 20 之后,这个节日结束了。很难理解这部分,特别是对于那些没有经验的java或C++编程。但不要害怕。如果你鼓起勇气学习,你会得到一些结果。我也需要休息一下。嘿,早餐还没吃呢。 tag:教程 电脑软件 孙文
相关内容