商务服务
什么是多态?为什么用多态?有什么好处?多态在什么地方用?
2024-11-26 04:21

什么是多态

什么是多态?为什么用多态?有什么好处?多态在什么地方用?

概念:同一操作作用于不同的对象,可以有不同的解释,产生不同的执行结果,这就是多态性。简单的说:就是用基类的引用指向子类的对象。

 

为什么要用多态呢

原因:我们知道,封装可以隐藏实现细节,使得代码模块化;继承可以扩展已存在的代码模块(类;它们的目的都是为了——代码重用。而多态除了代码的复用性外,还可以解决项目中紧偶合的问题,提高程序的可扩展性.。耦合度讲的是模块模块之间,代码代码之间的关联度,通过对系统的分析把他分解成一个一个子模块,子模块提供稳定的接口,达到降低系统耦合度的的目的,模块模块之间尽量使用模块接口访问,而不是随意引用其他模块的成员变量。

 

多态有什么好处

有两个好处

1. 应用程序不必为每一个派生类编写功能调用,只需要对抽象基类进行处理即可。大大提高程序的可复用性。//继承  2. 派生类的功能可以被基类的方法或引用变量所调用,这叫向后兼容,可以提高可扩充性和可维护性。 //多态的真正作用

 

多态在什么地方用

可以用在方法的参数中和方法的返回类型中。

在方法中的参数,请看下面的例子

   public abstract class Driver
    {
        public void run();//让子类来运行
    }
class SBenz : Driver
    {
        public void run()
        {
            Console.WriteLine("Benz在以200迈的速度在run");
        }
    }
 class JD : Driver
    {
        public void run()
        {
            Console.WriteLine("JD is running...");
        }
    }
 class Person
    {
        private Driver driver;
        public Person()
        {
        }
        public Person(Driver driver)
        {
            this.driver = driver;
        }
        public void drive()
        {
            driver.run();
        }
        public void setDriver(Driver driver)
        {//运用参数多态,以后不管买什么车都可以
            this.driver = driver;
        }
   }
static void Main(string[] args)
        {
            Person p = new Person();
            JD jd = new JD();//刚开始没钱就买辆JD吧
            p.setDriver(jd);
            p.drive();
            SBenz benz = new SBenz();//有钱换车了
            p.setDriver(benz);
            p.drive();
        }

 

在方法的返回类型中,请看下面的例子

上面的例子中,不管是JD还是Benz都是我们自己直接new出来的.我们可以设计一个工厂类,专门生成汽车

 public class CarFactory
    {
        public Driver factory(String carName)
        {
            if (carName.Equals("JD"))
            {
                return new JD();
            }
            else if (carName.Equals("Benz"))
            {
                return new SBenz();
            }
            else
            {
                Console.WriteLine("对比起,不伺候");
                return null;
            }
        }
    }

    以上就是本篇文章【什么是多态?为什么用多态?有什么好处?多态在什么地方用?】的全部内容了,欢迎阅览 ! 文章地址:http://sicmodule.glev.cn/news/10722.html 
     资讯      企业新闻      行情      企业黄页      同类资讯      首页      网站地图      返回首页 歌乐夫资讯移动站 http://sicmodule.glev.cn/mobile/ , 查看更多   
最新新闻
李佳琦热议:不建议普通女生进行医美,理由竟是这些!
热搜话题#李佳琦不建议普通女生做医美#近日引起广泛关注,李佳琦在他的直播中分享了对此的看法。他表示,如果资金充裕并有闲暇去
深康佳A股价收涨7.58% 成交额近15亿元
深康佳A4月15日收盘报5.68元,较前一交易日上涨0.40元,单日成交量为273.06万手,达14.90亿元。公司当日为4.99元,盘中最高触及
学校教室里是否可以插自己的电脑:利与弊分析
学校教室里是否可以插自己的电脑:利与弊分析统一免费看热线电话《今日汇总》学校教室里是否可以插自己的电脑:利与弊分析各热线
解放军继续进逼台岛,美俄接连发声,关键时刻,普京火速力挺中国
据央视军事报道,东部战区近日组织陆海空火等兵力位台岛周边开展联合演训。国防大学教授张弛表示:这次联演,体现了解放军坚决捍
东方精工一季度净利大增超5倍 机器人布局进展受关注
截至4月15日收盘,东方精工股价报12.06元,较前一日收盘上涨4.15%。全天成交金额达14.82亿元,换手率为12.47%。该股盘中最高触及
首饰金价突破900元
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。Notice: The
中学为了不让学生玩手机, 竟然违规安装手机信号屏蔽器?
最近,有中学生向相关部门投诉,学校违规安装手机信号屏蔽器,侵犯了他们合法权益。而收到投诉后,相关部门立即叫停了上述学校的
跨入“百亿俱乐部”的东鹏饮料,受困于东鹏特饮?
“累了困了,喝东鹏特饮”,一句洗脑广告语,让东鹏特饮在国内迅速崛起,成为国内功能饮料市场仅次于红牛的存在。近日,东鹏饮料
杭州有学校规定:违规使用手机,取消各类评优!绝大部分家长态度一致
  这两天,“禁止中小学生将智能手机带入校园”的话题成为网络热点。起因是教育部对于十三届全国人大三次会议第4883号建议的答
“饮料之王”3年6倍,就看东鹏饮料了?
2024年已然画上了句号,属于东鹏饮料的2025年拉开了帷幕。2025年,尽管已经刚过“而立之年”,但东鹏饮料依然迸发着强大的品牌活