密封类与密封方法

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication13
{
    public class myClass1
    {
        //虚方法,用来显示信息
        public virtual void showInfo()
        {
        }
    }
    public sealed class myClass2 : myClass1//密封类,继承自myClass1
    {
        private string id = "";//string 类型变量,用来记录编号
        private string name = "";//string类型变量,用来记录名称
        //编号属性
        public string ID
        {
            get
            {
                return id;
            }
            set
            {
                id = value;
            }
        }
        //名称属性
        public string Name
        {
            get
            {
                return name;
            }
            set
            {
                name = value;
            }
        }
        //密封并重写基类中的ShowInfo方法
        public sealed override void showInfo()
        {
            Console.WriteLine(ID+""+Name);
        }
    }
    class Program
    {
        static void Main(string[] args)
        {
            myClass2 myclass2 = new myClass2();//实例化密封类对象
            myclass2.ID = "BH001";//为密封类中的编号属性赋值
            myclass2.Name = "TM";//为密封类中的名称属性赋值
            myclass2.showInfo();//调用密封类中的密封方法
         }
    }
}
时间: 2024-09-27 15:02:17

密封类与密封方法的相关文章

C#密封类和密封方法--C#基础

1.密封类 1)不是所有的类都可以继承,不能别继承的类叫做密封类.如果一个类不希望被继承.被派生可以采用关键字sealed,下面Class2不能继承Class1 Class1.cs: namespace 密封类和密封方法{ //如果一个类不希望被继承.被派生可以采用关键字sealed public sealed class Class1 { }} Class2.cs namespace 密封类和密封方法{ class Class2:Class1//不可以继承,Class1有修饰符sealed {

C# 密封类和密封方法

C#中使用关键字sealed,将类和方法声明为密封类或者密封方法; sealed class A  //密封类   {         }      public sealed override void N()  //密封方法    {        Console.WriteLine();     } 2.对于密封类来说,表示该类不能被继承;对于密封方法来说,表示该方法不能被重写; 例①: //对于密封类来说,表示该类不能被继承     sealed class A     {     }

C#之密封类(详解)

10.3  密封类与密封方法 如果所有的类都可以被继承,那么很容易导致继承的滥用,进而使类的层次结构体系变得十分复杂,这样使得开发人员对类的理解和使用变得十分困难,为了避免滥用继承,C#中提出了密封类的概念.本节将对类和方法的密封进行详细介绍. 10.3.1  密封类概述及声明 密封类可以用来限制扩展性,如果密封了某个类,则其他类不能从该类继承:如果密封了某个成员,则派生类不能重写该成员的实现.默认情况下,不应密封类型和成员.密封可以防止对库的类型和成员进行自定义,但也会影响某些开发人员对可用性

[转] Java程序员学C#基本语法两个小时搞定(对比学习)

Java程序员学C#基本语法两个小时搞定(对比学习) 对于学习一门新的语言,关键是学习新语言和以前掌握的语言的区别,但是也不要让以前语言的东西,固定了自己的思维模式,多看一下新的语言的编程思想. 1.引包 using System;java用import2.构造函数和java语法相同3.析构函数  变量和类的对象都有生命周期,生命周期结束,这些变量和对象就要被撤销.  类的对象被撤销时,将自动调用析构函数.一些善后工作可放在析构函数中完成.  析构函数的名字为~类名,无返回类型,也无参数.Per

《C#高级编程》读书笔记

<C#高级编程>读书笔记 C#类型的取值范围 名称 CTS类型 说明 范围 sbyte System.SByte 8位有符号的整数 -128~127(−27−27~27−127−1) short System.Int16 16位有符号的整数 -32 768~32 767(−215−215~215−1215−1) int System.Int32 32位有符号的整数 -2 147 483 648~2 147 483 647(−231−231~231−1231−1) long System.Int

亮剑.NET学习札记

学习前提要: 因为书的版本过老,有些章节不学了,要学的包括以下章节 暂定:1,2,4,5,6,7,9,10,11,12,13,14,15,16,17,18,附录A 第一章:主要是介绍.NET,包括面向对象,即一些用法. 1.什么是.NET 多指.NET Framework 是一个开发和执行环境,与硬件无关的程序执行平台,目的是实现一次编写,到处运行,目前平台还只是windows,但已有了跨平台的.NET基于MONO,.NET将程序编译成中间语言,再根据具体的硬件环境编译成可执行文件. 2.继承

《NET .NET深入体验和实战精要》第一章

.NET的几个特性 1.一次编译.到处运行. 2.编译语言不再是面试的瓶颈. 3.自动内存管理,让我们放心编程. 4.基类库--.NET开发的宝藏. 命名空间 命名空间是一种特殊的分类机制,他将与一个特定功能集有关的所有类型都分到一起,是.避免类名冲突的一种方式 流线控程 1.条件语句 2.循环语句 有for循环,while循环,do...while循环,foreach循环. 3.跳转语句 有goto语句,break语句,continue语句,return语句. 字符串的常见操作 面向对象 1.

NET .NET深入体验和实战精要

在学习.NET之前要充分理解基础,在这里将基础的知识点一一列举. 万丈高楼平地起 1.命名空间 命名空间是一种特殊的分类机制,他将与一个特定功能集有关的所有类型都分到一起,是.避免类名冲突的一种方式 2.变量及其作用域 3.语句 语句可以分为条件语句,循环语句,跳转语句. (1)条件语句有if语句,switch语句. (2)循环语句有for循环,while循环,do...while循环,foreach循环. (3)跳转语句有goto语句,break语句,continue语句,return语句.

【转】C#之继承

C#之继承 一.继承的类型 在面向对象的编程中,有两种截然不同继承类型:实现继承和接口继承 1.实现继承和接口继承 *实现继承:表示一个类型派生于基类型,它拥有该基类型的所有成员字段和函数.在实现继承中,派生类型采用基类型的每个函数的实现代码,除非在派生类型的定义中指定某个函数的实现代码.在需要给现有的类型添加功能,或许多相关的类型共享一组重要的公共功能时,可以使用这种类型的继承. *接口继承:表示一个类型只继承了函数的签名,没有继承任何的代码.在需要指定该类型具有某些可用的特性时,最好使用这种