博客
关于我
夜光带你走进C#语言 基础版本(50)
阅读量:290 次
发布时间:2019-03-01

本文共 1471 字,大约阅读时间需要 4 分钟。

夜光序言:

 

青年深邃双眸略过一抹坚毅的神采,自言自语道:

所学到的任何有价值的知识都是由自学中得来的。天才就是这样,终身努力,便成天才。不知道并不可怕和有害。任何人都不可能什么都知道,可怕的和有害的是不知道而伪装知道。

 

 

 

 

 

 

 

 

 

 

 

 

正文:

很帅~~

虚方法的调用:调用上,使用子类构造的对象调用虚方法,就会调用子类的方法,使用父类构造的对象,就会调用父类的方法。

隐藏方法的调用:调用上, 使用子类类型的声明调用隐藏方法,就会调用到子类的方法。若想调用被隐藏的方法,需要用父类类型的声明来调用。

调用不同的举例:

 
using System;namespace GeniusTest01{    class Enemy    {        // 夜光:hashak        public void Move() {            Console.WriteLine("调用了 enemy的move方法");        }        public virtual void Attack() {            Console.WriteLine("enemy attac");        }    }    class Boss : Enemy    {        public override void Attack() {            Console.WriteLine("Boss Attac");        }        public new void Move() {            Console.WriteLine("Boss move");        }    }    public class Class86    {        static void Main(string[] args)        {            //---- 隐藏方法的调用----begin            Boss oneEnemy = new Boss();            oneEnemy.Move(); // 调用的是隐藏方法, 用子类的声明来调用的,调用的就是子类的Move。            Enemy twoEnemy = new Boss();            twoEnemy.Move(); // 调用的隐藏方法, 用父类的声明来调用的,调用的就是父类的Move方法。            //-----------------------end            //-----虚方法的调用----- begin            //用什么类型 来构造,在调用方法的时候就会调用什么类型的方法。            Enemy threeEnemy = new Enemy();            threeEnemy.Attack(); // 调用虚方法,用父类来实例化的,所以调用的是父类的Attac方法。            Enemy fourEnemy = new Boss();            fourEnemy.Attack();  // 调用虚方法,用子类来实例化的,所以调用的就是子类(Boss)的Attac方法。            //-----虚方法的调用------end            Console.ReadKey();        }    }}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

转载地址:http://wxdo.baihongyu.com/

你可能感兴趣的文章
mysql8 配置文件配置group 问题 sql语句group不能使用报错解决 mysql8.X版本的my.cnf配置文件 my.cnf文件 能够使用的my.cnf配置文件
查看>>
MySQL8.0.29启动报错Different lower_case_table_names settings for server (‘0‘) and data dictionary (‘1‘)
查看>>
MYSQL8.0以上忘记root密码
查看>>
Mysql8.0以上重置初始密码的方法
查看>>
mysql8.0新特性-自增变量的持久化
查看>>
Mysql8.0注意url变更写法
查看>>
Mysql8.0的特性
查看>>
MySQL8修改密码报错ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
查看>>
MySQL8修改密码的方法
查看>>
Mysql8在Centos上安装后忘记root密码如何重新设置
查看>>
Mysql8在Windows上离线安装时忘记root密码
查看>>
MySQL8找不到my.ini配置文件以及报sql_mode=only_full_group_by解决方案
查看>>
mysql8的安装与卸载
查看>>
MySQL8,体验不一样的安装方式!
查看>>
MySQL: Host '127.0.0.1' is not allowed to connect to this MySQL server
查看>>
Mysql: 对换(替换)两条记录的同一个字段值
查看>>
mysql:Can‘t connect to local MySQL server through socket ‘/var/run/mysqld/mysqld.sock‘解决方法
查看>>
MYSQL:基础——3N范式的表结构设计
查看>>
MYSQL:基础——触发器
查看>>
Mysql:连接报错“closing inbound before receiving peer‘s close_notify”
查看>>