C#父类引用指向子类
来源:互联网 发布:郑州it外包公司 编辑:程序博客网 时间:2024/04/28 02:51
今天研究了一下 C#中有关父类引用指向子类的问题。所谓“父类引用指向子类”是指声明为父类对象,但实例化创建子类对象。举例说明父类Teacher、子类Professor,声明和实例化:Teacher liming = new Professor (); 将liming声明为教师类,但实例化成教授。先看一段代码:
using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace ConsoleApplication3{ class A { public virtual void print() { Console.WriteLine ( "A::print()" ); } } class B : A { public override void print() { Console.WriteLine("B::print()"); } } class C : B { public void print(A a) { a.print(); } public override void print() { Console.WriteLine("C::print()"); } static void Main(string[] args) { A a = new A (); A pa = new A (); A pb = new B (); A pc = new C (); B b = new B (); C c = new C (); a.print (); b.print(); c.print (); pa.print(); pb.print(); pc.print(); c.print(a); c.print(b); c.print(c); String str1 = pa.GetType().ToString(); String str2 = pb.GetType().ToString(); String str3 = pc.GetType().ToString(); Console.WriteLine(str1); Console.WriteLine(str2); Console.WriteLine(str3); Console.ReadKey(); } }}
输出结果如下:
- C#父类引用指向子类
- C#父类引用指向子类对象
- 父类引用指向子类
- 父类引用指向子类
- C#怎么理解“父类引用指向子类对象”
- 父类引用指向子类对象
- 子类引用指向父类对象???
- 父类引用指向子类对象
- 父类引用指向子类对象
- 父类引用指向子类对象
- 父类引用指向子类对象
- 父类引用指向子类对象
- 父类引用指向子类对象
- 关于父类引用指向子类对象
- 父类的引用指向子类对象
- 父类引用指向子类变量
- 父类引用指向子类对象
- 父类引用指向子类对象
- 【转】C++内存分配方式详解——堆、栈、自由存储区、全局/静态存储区和常量存储区
- C++中关于写日志文件Log的方法
- jquery分页插件jquery.tablesorter.pager.js,点击下一页跳到后两页问题
- Linux网络环境配置
- 用nmake编译链接程序报错error LNK2019: 无法解析的外部符号_WinMain@16,该符号在函数 ___tmainCRTStartup 中被引用
- C#父类引用指向子类
- 【转】SendMessage 和 PostMessage 的区别
- Struts2拦截器
- UVa OJ全部题目列表(按难度分级,仅标题)
- 【学习笔记】log4cxx配置详解
- Exception初识
- 【转】关于Invalidate、InvalidateRect和UpdateWindow
- eclipse连接oracle数据库的方法
- IE 8 HTML Parsing Error: Unable to modify the parent container element before the child element is c