推广 热搜: csgo  vue  angelababy  2023  gps  新车  htc  落地  app  p2p 

面向对象的编程

   2023-08-23 网络整理佚名1730
核心提示:但是,当我们看看SOLID原则,特别是“替代原则”时:“使用指针或对基类的引用的函数必须能够在不知道它的情况下使用派生类的对象。好吧,我们应该能够将子类的实例替换为其父类,并且一切都应该继续工作。User对象是否处理成为一个人的逻辑,但它应该知道从控制台创建该对象吗?如果要为应用程序或WPF应用程序重用相同的逻辑,会发生什么?

这只是我对问题的更切题的看法,但根据传统的面向对象设计准则,用户是一个人,因此你获得了继承。 然而,当我们查看 SOLID 原则时,特别是“替换原则”:“使用基类的指针或引用的函数必须能够在不知情的情况下使用派生类的对象。” - ,LSP 该论文链接到“OOD 原则”是什么意思? 好吧,我们应该能够用父类替换子类的实例,并且一切都应该继续工作。 在这种情况下它不起作用,有一些额外的属性您依赖于一个用户不具有的属性。 在这种情况下,你有没有考虑过用组合来代替继承呢?

public class Person
{
   public static void InputPerson(Person p)
   {
      // Do the input logic here
   }
}
public class User
{
    public Person Person { get; private set; }
    public static void InputUser(User u)
    {
        if (u.Person == null)
            u.Person = new Person;
        Person.InputPerson(u.Person);
        Console.WriteLine("Telephone:");
        u.Telephone = Console.ReadLine();
    }
}

面向对象编程的原则是什么_spring面向切面编程_面向接口编程详解

我们可以进一步深入 SOLID,查看单一职责原则,并询问 /User 对象是否处理作为一个人的逻辑,但它是否应该知道从控制台创建该对象? 如果您想为您的应用程序或 WPF 应用程序重用相同的逻辑,会发生什么情况?

 
反对 0举报 0 收藏 0 打赏 0评论 0
 
更多>同类资讯
推荐图文
推荐资讯
点击排行
网站首页  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报
Powered By DESTOON