【问题标题】:how to call non static method into a static? [duplicate]如何将非静态方法调用为静态方法? [复制]
【发布时间】:2014-10-04 14:38:28
【问题描述】:

我有以下代码,我想从data2()调用data1()

 private void data1()
   {
   }
   private static void data2()
   {
       data1(); //generates error
   }

【问题讨论】:

  • 通过创建对象......
  • 我想在用 java 或任何 ooops 语言做事之前。您应该了解 OOPS 概念……这是一个非常基本的概念。
  • 它的 C#,我只需要一个思考为什么没有人帮助我?
  • 因为这个论坛不是用来学习的......先学习,如果你遇到困难,然后在这里发帖......没有人会回答这样一个oops的基本问题
  • 这个例子出自哪里?这个问题与stackoverflow.com/questions/1360183/…相同

标签: c# methods static


【解决方案1】:

为了调用非静态方法,您需要创建一个对象。

静态方法是类级别的方法。 “正常”方法在对象 leven 上。

因此,为了执行非静态方法,您需要执行以下操作:

class ClassName {
   private static void data2() {
       var data1Obj = new ClassName();
       data1Obj.data1();
   }

   private void data1() {
      //execute code here
   }
}

但如果您只以这种方式使用 data1,您可以将其设为静态

【讨论】:

  • 就我(也许还有其他人)的知识而言,我很想知道我的答案有什么问题,值得一票否决,以便我将来可以改进其他答案
猜你喜欢
  • 1970-01-01
  • 2023-03-26
  • 1970-01-01
  • 1970-01-01
  • 2013-03-20
  • 2012-04-24
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多