- 浏览: 256880 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (293)
- web (1)
- [随笔分类]项目管理 (30)
- [随笔分类]WCF (14)
- 未分类 (1)
- [随笔分类]Linq (4)
- [随笔分类]C#基础 (24)
- 项目 (1)
- [网站分类]3.非技术区(技术之外的文章,但不要涉及任何政治内容) (8)
- [网站分类]1.首页原创精华.NET区(包含架构设计、设计模式)(对首页文章的要求:原创、高质量、经过认真思考并精心写作) (9)
- [随笔分类]Ubuntu (4)
- ASP.Net (1)
- [网站分类]2..NET新手区(用于发表不合适发表在首页的.NET技术文章,包括小经验、小技巧) (30)
- [随笔分类]ASP.NET MVC (20)
- [随笔分类]ASP.NET (3)
- [随笔分类]程序员厨房 (4)
- [随笔分类]英语学习 (28)
- [网站分类]4.其他技术区 (1)
- [随笔分类]Silverlight (12)
- [随笔分类]CodeSmith (8)
- [随笔分类]其他 (4)
- [随笔分类]Ruby (4)
- [发布至博客园首页] (34)
- [网站分类]其他技术区 (3)
- [随笔分类]Ruby on Rails (2)
- [网站分类].NET新手区 (33)
- [随笔分类]TDD (1)
- [随笔分类]不谈技术 (2)
- [网站分类]非技术区 (7)
最新评论
-
yicone:
You make a mistake when paste t ...
WCF步步为营(一):简单示例 -
jinweijie:
你好,这个实现不错,但是在用了scriptmanager以后就 ...
在服务器端保存ViewState
1. 这里主要演示属性的继承和覆盖
2. 把属性理解为方法,实际上编译器就是把属性生成方法
示例:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace NetTest
{
public class TestPerpoerty
{
class DerivedClass : BaseClass
{
private string name = "Name-DerivedClass";
private string id = "ID-DerivedClass";
new public string Name
{
get
{
return name;
}
// Using "protected" would make the set accessor not accessible.
set
{
name = value;
}
}
// Using private on the following property hides it in the Main Class.
// Any assignment to the property will use Id in BaseClass.
new private string Id
{
get
{
return id;
}
set
{
id = value;
}
}
}
class BaseClass
{
private string name = "Name-BaseClass";
private string id = "ID-BaseClass";
public string Name
{
get { return name; }
set { }
}
public string Id
{
get { return id; }
set { }
}
}
public void Test()
{
BaseClass b1 = new BaseClass();
DerivedClass d1 = new DerivedClass();
b1.Name = "Mary";
d1.Name = "John";
b1.Id = "Mary123";
d1.Id = "John123"; // The BaseClass.Id property is called.
System.Console.WriteLine("Base: {0}, {1}", b1.Name, b1.Id);
System.Console.WriteLine("Derived: {0}, {1}", d1.Name, d1.Id);
/*
输出:
Name and ID in the base class: Name-BaseClass, ID-BaseClass
Name and ID in the derived class: John, ID-BaseClass
*
--------------------------------
注意,如果将 new private string Id 替换为 new public string Id,则得到如下输出:
Name and ID in the base class: Name-BaseClass, ID-BaseClass
Name and ID in the derived class: John, John123
*/
}
}
}
发表评论
-
C#拾遗系列(1):委托
2008-06-11 14:43 595一、委托概述 委托具有以下特点: 委托类似于 ... -
C#拾遗系列(2):属性
2008-06-11 14:54 7161. 这里主要演示属性的继承和覆盖 2. 把属性理解为方法 ... -
C#拾遗系列(3):构造函数
2008-06-11 15:19 6171. 主要演示构造函数的继承 声明空 ... -
C#拾遗系列(4):索引器
2008-06-11 15:30 7701. 概述 索引器允许类或结构的实例就像数组一样进行索引。索引 ... -
C#拾遗系列(5):泛型委托
2008-06-14 17:25 588using System; using System.Col ... -
C#拾遗系列(6):迭代器
2008-06-14 23:03 5211. 示例: using System; using Sys ... -
C#拾遗系列(7):自定义属性
2008-06-18 14:52 6451 .描述 属性提供功能强大的方法以将声明信息与 C# 代码( ... -
C#拾遗系列(8):异常
2008-06-19 11:02 597using System; using System.Col ... -
C#拾遗系列(9):继承、接口、扩展方法、分部类、类操作、Ref and Out、可空类型
2008-06-19 15:07 1150本文内容: 继承 Equal示例 结构和类 ... -
MSIL(0):简介
2009-03-04 23:06 860Microsoft Intermediate Language ... -
MSIL(1): Hello World
2009-03-09 22:14 7751. 用记事本编写如下代码 .assembly HelloWo ... -
代码段:ASCII to Unicode
2009-04-17 10:44 7891: private string Co ... -
Get countries from system
2009-05-08 16:02 8021: using System; 2: usi ... -
[Tips]:Read value from Resource file in C#
2009-05-18 16:18 10341: //Namespace refer ... -
[tips]: 多线程 ManualResetEvent
2009-05-21 14:23 1340WaitHandle用于实现对共享资源的独占访问,AutoRe ... -
C#拾遗系列(1):委托
2008-06-11 14:43 670一、委托概述 委托具有以下特点: 委托 ... -
C#拾遗系列(3):构造函数
2008-06-11 15:19 6321. 主要演示构造函数的继承 ... -
C#拾遗系列(4):索引器
2008-06-11 15:30 5921. 概述 索引器允许类或结构的实例就像数组一样进行索引。索引 ... -
C#拾遗系列(5):泛型委托
2008-06-14 17:25 682using System; using System.Col ... -
C#拾遗系列(6):迭代器
2008-06-14 23:03 7141. 示例: using System; using Sys ...
相关推荐
本文将重点介绍如何通过C#语言进行CATIA的二次开发,特别是在获取产品属性方面。 在CATIA二次开发过程中,经常需要处理模型产品对象(Product)的属性信息。这些属性信息通常分为一般属性和自定义属性。 一般属性...
开发语言:C# 参考网络上流传的《勇者斗恶龙》游戏源码制作的一个射击类游戏,借用了《勇者斗恶龙》的游戏界面及部分源码。 整个游戏框架已基本完成,源码中采用了一些设计模式,有精美的游戏画面和详尽的代码注释,...
第六章节:属性、索引器、委托和事件 第七章节:WinForms基础知识 第八章节:WinForms控件 第九章节:调试、测试和异常处理 第十章节:多线程 第十一章节:数组和集合对象 第十二章节:C# 中的文件处理 注:参与评论返还...
C# 中的常规属性和自动实现属性的区别 C# 中的属性是类中的一个成员,它可以是一种简单的数据存储方式,也可以是一个复杂的逻辑处理机制。在本文中,我们将重点讨论 C# 中的常规属性和自动实现属性的区别。 常规...
为了封装RabbitMQ.Client库,你可以创建一个RabbitMQService类,提供一系列的静态方法,如发送消息、接收消息、声明交换机、声明队列等。这样,其他业务代码可以直接调用这些方法,而无需关心底层的实现细节。 总结...
编程学C#(1):VS2010 C# Access数据库管理程序,1. 基于VS2010 C# 的的Access数据库管理设计; 2. 数据集的创建; 3. .NET组件,dataGridview 控件的使用; 4. 数据库的插入、删除、查询操作设计。
本书内容包括C#语言及其开发环境、掌握C#语言基础、流程控制语句、字符与字符串、数组和集合、C#面向对象程序设计、异常处理和程序调试、Windows窗体、Windows应用程序常用控件、Windows应用程序高级控件、c撑面向...
2. 属性过滤:根据需要,可以实现只显示特定类型的属性,或者在特定条件下隐藏某些属性。 3. 自定义编辑器:通过注册自定义的`UITypeEditor`,可以为特定属性提供特殊的编辑界面,如日期选择器、颜色选取器等。 4....
在C#编程中,修改文件属性的摘要信息通常涉及到对文件元数据的操作。这包括诸如作者、标题、创建日期等信息。在这个过程中,我们需要利用Windows操作系统提供的COM接口,特别是ole32.dll库中的功能。ole32.dll是系统...
2.设置播放器的属性 3.批量添加文件 4.批量将列表中的文件加到播放器列表 5.支持歌词显示 6.本程序支持Windows Media Player中所有能播放的文件格式。 插件: 必须安装 RealoneED.exe 让windowsMediaPlayer支持RM...
【C#系列:Winform与C#基础语法详解】 C#是一种由微软开发的面向对象的编程语言,广泛应用于Windows应用程序开发,尤其是与.NET Framework框架相结合时,其强大的功能和简洁的语法使得开发者能高效地构建各种应用。...
在.NET框架中,C#提供了一种强大的机制,允许开发者扩展IDE(如Visual Studio)的属性编辑器功能,这就是UITypeEditor。通过自定义UITypeEditor,我们可以为控件、类或其他类型的属性创建定制的编辑界面,使得在设计...
在“Modern C#系列课程(4):C# 中的类的设计”中,我们将深入探讨如何有效地设计和使用C#中的类。本课程涵盖了以下几个关键知识点: 1. 类的定义与结构: - 类是对象的模板,它定义了对象的状态(属性)和行为...
XML文档由一系列元素组成,每个元素可以有零个或多个子元素,以及属性。元素通过开始标签(如 `<element>`)和结束标签(如 `</element>`)定义。属性是以名称-值对的形式出现在开始标签内,如 `...
在C#编程中,`PropertyGrid`控件是一个强大的工具,用于显示和编辑对象的属性。它通常用于创建用户友好的界面,使开发者能够轻松地查看和修改对象的属性值。这个范例将向我们展示如何扩展`PropertyGrid`的功能,以...
在C#中,可以通过使用`System.ComponentModel`命名空间中的特性来定义属性,如`DefaultValue`(指定默认值)和`Category`(分组属性)。以下是一个添加自定义属性的例子: ```csharp [DefaultValue("默认文本")] ...
在C#编程中,获取数码相机照片的各种属性是一项常见的任务,尤其在图像处理或媒体管理应用中。这些属性包括但不限于照片的元数据,如拍摄日期、时间、地理位置、相机型号、光圈、快门速度、ISO感光度、焦距等。在本...
在C#中实现图像处理是一项常见的任务,尤其是在游戏开发、图像分析、图形用户界面设计等领域。本教程将深入探讨如何获取一幅图片的像素值及其RGB(红绿蓝)分量。首先,我们需要了解一些基本概念。 图像本质上是由...