【c# – 为什么这个继承的Establish多次执行?】教程文章相关的互联网学习教程文章

c# – 来自Jobject Newtonsoft的继承【代码】

从Jobject(Newtonsoft)继承来自未序列化的类的existents属性. 为什么Id和Name属性没有序列化?public class Test : JObject {public int Id { get; set; }public string Name { get; set; } }class Program {static void Main(string[] args){var test = new Test();test["new_pro"] = 123456;test.Id = 1;test.Name = "Dog";var r = Newtonsoft.Json.JsonConvert.SerializeObject(test);// Result = { "new_pro":123456}} }任何的...

在继承基类时,有没有理由为什么C#默认为new而不是覆盖?【代码】

我知道覆盖和新的区别(或者相信这样做无论如何),并且有几个问题描述了两者之间的差异,但我的问题是,是否有一个特殊的原因,为什么C#默认为新的行为(带有警告),而不是默认覆盖?public class Base {virtual public string GetString() => "Hello from Base"; }public class Child : Base {public string GetString() => "Hello from Child"; }...var childAsBase = (Base)new Child(); Console.WriteLine(childAsBase.GetString());....

c# – 访问继承的成员【代码】

我有这个继承自贷款的LoanWithClient模型:public class LoanWithClient : Loan {public Client Client { get; set; } }如何在不显式写入其属性的情况下访问整个继承的Loan对象?LoanWithClient does not contain a definition for Loanreturn new LoanWithClient {**Loan** = loan, //The Loan is erroring: LoanWithClient does not contain a definition for LoanClient = client };类贷款:public class Loan {public int ID {...

C#ToString继承【代码】

我有一个问题(这是我的错,我只是无法发现我做错了什么)“ToString”没有调用正确的方法……public class ClassA {public override ToString(){return "Hello, I'm class A.";} }public class ClassB : ClassA {public override ToString(){return "Hello, I'm class B.";} }ClassB myClassB = new ClassB(); List<ClassA> myClassAList = new List<ClassA>();myClassAList.Add((ClassA) myClassB); ClassA tempClassA = myClassALi...

c# – MSTest,在具有测试类继承时发生[ClassCleanup]调用的时间【代码】

我有像这样的功能测试的层次结构[TestClass] class BaseClass { // specific methods and members relevant to all functional tests are here // ie how to work with db }[TestClass] class Module1:BaseClass {[ClassInitialize]public static void Module1TestsInit(TestContext context){//create some db data here, which is needed only for Module1}[ClassCleanup]public static void Module1TestsCleanup(){//delete Mod...

C#继承多态

什么是继承? class people { public string Name { get; set; } public int Age { get; set; } public char Sex { get; set; } } class Student:people {} 什么是多态? class People { public string Name { get; set; } public int Age { get; set; } public char Sex { get; set; } public virtual void Eat() { } } c...

C#vs C – 类型,继承和vtable【代码】

我无法理解导致C和C#之间差异的原因. 首先,我们有一个基类包含虚函数的示例.class Base { protected:int super; public:virtual int f() = 0; };class Derived : public Base { public:int extraA;int f(){ return 1; } };int main() {Derived *d = new Derived();std::vector<Base*> v;v.push_back(d);for(int i=0; i < v.size() ;i++){// Output "Derived"std::cout << typeid(*v[i]).name() << std::endl;}return 0; }正如预期的...

C#中的通用继承:无法将类型’MyWidget’隐式转换为’IWidget’【代码】

我在使用泛型设置继承时遇到问题. 从本质上讲,我想要做的是拥有一个本身接受接口的通用接口.棘手的部分是“内部”界面可以在其上面分层更具体的界面. 以下是我正在尝试构建的结构的代表性示例:public interface IThing { }public interface IMoreSpecificThing : IThing { }public interface IWidget<T> where T : IThing { }public class MySpecificThing : IMoreSpecificThing { }public class MyWidget : IWidget<MySpeci...

C#中是否有方法继承?【代码】

我想知道是否有任何功能,如方法继承而不是整个类继承,让我详细说明我想解释的内容:class a {public void GetA(){// some logic here } }class b {public void GetB() : new Class().GetA() }我知道它看起来很奇怪,但我正在阅读如何在对象组合模式中进行委托,我出于某种原因认为这种模式.解决方法:如果您只想在GetB()中调用GetA(),但不想在GetB()中定义或显式引用类a的实例,则可以将GetA()作为委托传递. 在C#中,有许多预定义的委托...

c# – 如何知道Type是否继承了其他类型?【代码】

怎么知道Type是否继承了其他类型?Type t; // i get the t from somewhere bool b = t.IsInhertitedFrom(typeof(BaseType));解决方法:bool b = t.IsSubclassOf(typeof(BaseType)) 并检查类型是否实现接口使用: bool b = t.GetInterface(typeof(IMyInterface).FullName)!= null

c# – 重新实现继承的接口方法【代码】

我没有完全理解使用Interfaces,所以我不得不问:-) 我使用BaseClass,它实现了IBaseClass接口.这个接口只包含一个声明:public interface IBaseClass {void Refresh (); }所以我在我的Baseclass中实现了一个Refresh方法:public void Refresh (){Console.WriteLine("Refresh");}现在我想使用从这些Baseclass扩展的一些类并实现IBaseClass接口:public class ChildClass : BaseClass,IBaseClass{}但是在我的BaseClass中实现“刷新”的...

c# – 防止Winforms Designer为继承的控件生成属性值【代码】

我有一个自定义DataGridView,让我们这样说:public MyGridView : DataGridView {public MyGridView(){BackgroundColor = Color.Red;} }现在,当我在使用设计器的项目中使用此控件时,出于某种原因,还需要在designer.cs文件中设置该属性. 所以在设计器文件中,我会:this.MyGridView1.BackgroundColor = System.Drawing.Color.FromArgb((byte)(int)255, (byte)(int)0, (byte)(int)0);我的问题是,它阻止我能够改变MyGridView的构造函数中...

c# – 部分类/部分方法与基础/继承类【代码】

关于班级设计的问题.目前我有以下结构: 抽象基本存储库类 默认存储库实现类(实现一些抽象方法,其中逻辑通过所有特定类,但保留其他空) 特定的Repository实现类(实现上面的Default类中的空白) 我现在遇到了一个问题,我在Specific类中有一个特定的Update()方法,但是当这个方法中的所有代码都执行一些来自基类的代码时,也应该执行Default类. 我可以这样做public override Update() {// do Specific class actions and updates// ..../...

c# – 一个类可以继承.NET中的LambdaExpression吗?或者这不推荐?【代码】

请考虑以下代码(C#4.0): 公共类Foo:LambdaExpression {} 这会引发以下设计时错误:Foo does not implement inherited abstract member System.Linq.Expressions.LambdaExpression.Accept(System.Linq.Expressions.Compiler.StackSpiller)公共课Foo完全没有问题:表达式{}但是出于好奇和为了学习,我在Google System.Linq.Expressions.LambdaExpression.Accept(System.Linq.Expressions.Compiler.StackSpiller)中进行了搜索.并猜测...

C#继承和“this”关键字【代码】

我正在编写一些以前由其他开发人员编写的代码,我遇到了下面的代码块:/// <summary> /// Default Constructor. /// </summary> public Body(Revision parent) {mContainer = parent;mSections = new ArrayList();mSummary = new ArrayList(); }/// <summary> /// Constructs a Body from specified ParseElement. /// </summary> /// <param name="parent">Revision container.</param> /// <param name="elem">Source ParseElemen...