abstract相关内容
具有一个(或多个)虚拟纯函数的类是抽象的,不能用于创建一个新对象,因此它没有构造函数。 现在,我正在读一本有以下例子的书: class Employee { public: Employee(const char *,const char *); 〜Employee(); const char * getFirstName()const; const char * ge
..
尝试搜索,没有返回(i ithink)。 是否可以创建抽象类的向量? 例如,我有超级类Unit。 我有子类兵士,车辆和轰炸机。 然而,我想要任何子类的一个向量中的实例,例如向量UnitList可以持有士兵和车辆的实例? 这是可能吗? 我使用C ++如果它有帮助。 解决方案 是的,但你需要使用指针或智能指针(我会用这个)。 struct X {
..
我找到了今天的我感到困惑: 1,如果我有这样的: 公共接口INAMED { [XmlAttribute] 字符串名称{;组; } } 公共类命名为:收购Inamed { 公共字符串名称{;组; } } 它提供了以下输出(Name属性序列化为元素): <命名为GT; <名称>&约翰·LT; /名称> < /命名>
..
基类 类抽屉 { 公共抽象无效抽奖< T>(T型); } 派生类#1 类ADrawer:抽屉 { 公共覆盖无效抽奖< T>(列表< T>清单) { 的foreach(列表中的一个变种) { DrawA(一); } } 公共无效DrawA(代理A) { //绘制代码在这里 } $} b $ b
..
我想C#创建一个抽象类,从不同的界面,“继承”,但留下的具体落实到子类。然而,编译器抱怨,该类犯规实现接口指定的方法。我已经习惯了Java的这哪里总是工作,所以我不知道它是如何应该在C#中工作。无论如何,这是我的代码: 公共抽象类MyClass的:IDisposable接口,IPartImportsSatisfiedNotification { 私人字符串名称; 公共MyClass的(
..
为什么不允许更改属性的getter和setter方法的可见性和存在实现一个接口的时候? 接口IFoo的 { 串酒吧{搞定; } } 类RealFoo:IFoo的 { 公共RealFoo(串吧) { this.Bar =栏; } 公共字符串酒吧{搞定;私人集; } } 类StubFoo:IFoo的 { 公共字符串酒吧{搞定;组; } }
..
C#的规范,节10.1.1.1 指出: 这是抽象类是允许的(但不是必需的 )包含抽象的 的成员。 这让我可以创建类是这样的: 公共抽象A类 { 公共无效的主要() { //它充满逻辑! } } 甚至更好: 公共抽象类的一个 { 公共虚拟无效的主要(){} } 酒店的公共抽象b类:A { 公共覆盖密封无效的主要() { //
..
我已经看到了下面的代码布局读书论坛等博客文章和适应,以问几个问题。 公共接口IService< T> { INT加入(T实体); 无效更新(T实体); } 公共抽象类ServiceBase< T> :IService< T> { 公众诠释添加(T实体){...} 公共无效更新(T实体){...} } 公共接口ICarServi
..
什么是每一种的优点和缺点是什么? 接口中的方法 虚拟方法 抽象方法 当一个人应该选择什么?什么是做这个决定时,应该记住的要点? 解决方案 虚拟和抽象的几乎是相同的。虚拟方法具有可选择覆盖基类的实现,而一个抽象的方法不和的必须的可以在子类中重写。否则,它们是相同的。它们之间的选择取决于具体情况。如果你有一个基本实现,您可以使用虚拟的。如果不这样做,你需要每一个后代来实现它为自
..
我真的不知道有什么好看还是当我真正在抽象类和属性,或当使用非抽象的性质使用。我会尽力做一个简单的例子。比方说,我有这样的: 抽象类人 { 公共GenderType性别{搞定;组; } 公共字符串名称{;组;生于} 公开日期{搞定;组; } 公共BOOL IsNerd {搞定;组; } 抽象的公共无效说话(); 抽象的公共无效睡眠(); 抽象的公共无效AnoyingPeopl
..
公共抽象类的一个 { 公共抽象无效处理(); } 公共抽象B类:A { 公共抽象覆盖无效处理(); } 公共类C:B { 公共覆盖无效的过程() { Console.WriteLine(“ABC”) ; } } 这代码抛出编译错误:'B'呢没有实现继承的抽象成员“A.Process()'。 有没有办法做到这一点? 解决方案 刚刚
..
此模式使用一个抽象工厂,然后在工厂的实现。 我相信有这两个类标准命名约定,但我不。'知道它是什么 例如: 公共抽象类ChocolateFactory {}; 公共类MyChocolateFactory {}:ChocolateFactory 什么是标准约定在这里? 我想无论是ChocolateFactoryBase,或ConcreteChocolateFacto
..
我觉得像我跳过一个C#类或两个,但这里是我的困境: 我有我从中派生多个子类的抽象类。 我知道肯定每个子类中,我将有一个需要一定的静态对象作为模型构造这个对象将是每个子类的不同。 我的第一种方法是使抽象父类中的公共静态对象,然后,我才开始创建子类的任何实例,我将修改为每他们,但事实证明,这种方式实际上我只作一个静态对象,抽象类,以及每个它的子类使用它。 我怎么能?解决这个问题
..
我做在数据包关联是通过枚举做了服务器库 公共枚举ServerOperationCode:$字节b $ b { LoginResponse = 0×00, SelectionResponse = 0×01, BlahBlahResponse = 0×02 } 公共枚举ClientOperationCode:字节 { LoginRequest = 0×00, Selecti
..
所有我想要做的就是确保类的子类的项目实施静态方式,我想这是检查。在编译时避免运行时错误 抽象类的静态方法似乎不工作: 错误:静态成员 不能被标记为 超控,虚拟或抽象 公共抽象类项目 { 公共静态抽象项目GetHistoricalItem(INT编号,日期pastDateTime); } 公共类客户:项目 { 公共静态覆盖客户GetHistoricalItem(IN
..
我知道它可以用Java做的,因为我已经在过去使用这种技术相当广泛。在Java中,例如将在下面示出。 (附加的问题,什么是这种技术叫什么?这是很难找到这样的例子没有名字。) 公共抽象类例如{ 公共抽象无效doStuff(); } 公共类StartHere { 公共静态无效的主要(字串[] args){ 例如,X =新实例(){ 公共无效doStuff(){ 的System.out.pr
..
我不知道下面的代码是如何优化。特别是关于虚拟和直接调用。我已经谈到如何,我认为一切都在优化,但这些都只是猜测。 公共抽象类超 { 酒店的公共抽象无效美孚(); 公共无效FooUser() { 美孚(); } } 公共类Child1:超 { 公众覆盖无效美孚() { // DoSomething的 } } 公共类SealedChild:超 { 公众覆盖无效美
..
我想只有从基抽象类强制C#吸气的实施在给定的属性。 。派生类可能,如果他们愿意,还提供了该财产供公众使用的静态绑定类型的二传手 由于以下抽象类: 公共抽象类基地 { 公共抽象int属性{搞定; } } 如果我想要一个派生类还实现了一个二传手,我天真地尝试: 公共类派生:基本 { 公众覆盖int属性 { {返回场; } 集合{字段=值; } //错误
..
我最近碰到它似乎我需要一个“静态抽象”的方法有问题。我知道为什么这是不可能的,但我怎么能解决这个限制? 例如我有其中有一个描述字符串的抽象类。由于该字符串是很常见的所有情况下,它被标记为静态的,但我想需要从这个类派生的所有类提供自己的Description属性,所以我将其标记为抽象的: 抽象类AbstractBase { ... 公共静态抽象字符串描述{获得;} ...
..
只是出于好奇,我试图重写在基类中的抽象方法,和方法的实施抽象。如下图所示: 公共抽象类FirstAbstract { 公共抽象无效的someMethod(); }公共抽象类SecondAbstract:FirstAbstract { 公共抽象覆盖无效的someMethod(); //?这确实让什么意义?没有implementaion无论如何都会迫使派生类实现抽象的方法?
..