标签: constructor

我可以将Class.newInstance()与构造函数参数一起使用吗?

我想使用,Class.newInstance()但我实例化的类没有一个无效的构造函数.因此,我需要能够传递构造函数参数.有没有办法做到这一点?

java constructor

233
推荐指数
6
解决办法
13万
查看次数

223
推荐指数
6
解决办法
14万
查看次数

在构造函数中调用虚函数

假设我有两个C++类:

class A
{
public:
  A() { fn(); }

  virtual void fn() { _n = 1; }
  int getn() { return _n; }

protected:
  int _n;
};

class B : public A
{
public:
  B() : A() {}

  virtual void fn() { _n = 2; }
};
Run Code Online (Sandbox Code Playgroud)

如果我写下面的代码:

int main()
{
  B b;
  int n = b.getn();
}
Run Code Online (Sandbox Code Playgroud)

人们可能期望将n其设置为2.

事实证明,n设置为1.为什么?

c++ constructor overriding virtual-functions

220
推荐指数
6
解决办法
9万
查看次数

Java中的构造函数可以是私有的吗?

构造函数可以是私有的吗?私有构造函数如何有用?

java constructor private

219
推荐指数
8
解决办法
20万
查看次数

217
推荐指数
5
解决办法
9万
查看次数

访问匿名类的构造函数

假设我有一个具体的类Class1,我正在创建一个匿名类.

Object a = new Class1(){
        void someNewMethod(){
        }
      };
Run Code Online (Sandbox Code Playgroud)

现在有什么方法可以重载这个匿名类的构造函数.如下图所示

Object a = new Class1(){
        void someNewMethod(){
        }
        public XXXXXXXX(int a){
          super();
          System.out.println(a);
        }
      };
Run Code Online (Sandbox Code Playgroud)

用xxxxxxxx命名构造函数?

java constructor overloading anonymous-types

212
推荐指数
4
解决办法
11万
查看次数

C#构造函数链接?(怎么做?)

我知道这应该是一个非常简单的问题,但我一直在努力解决这个概念.我的问题是,你如何在c#中链接构造函数?我是第一个OOP课程,所以我只是在学习.我不明白构造函数链如何工作或如何实现它,甚至为什么它不仅仅是没有链接的构造函数.

我会很感激一些解释的例子.

那么如何将它们联系起来呢?我知道有两个:

public SomeClass this: {0}

public SomeClass
{
    someVariable = 0
} 
Run Code Online (Sandbox Code Playgroud)

但你如何用三,四等做到这一点?

再一次,我知道这是一个初学者的问题,但我很难理解这一点,我不知道为什么.

c# constructor constructor-chaining

210
推荐指数
7
解决办法
13万
查看次数

什么时候构造函数抛出异常?

什么时候构造函数抛出异常?(或者在目标C的情况下:什么时候初始化者返回nil是正确的?)

在我看来,如果对象不完整,构造函数应该失败 - 因此拒绝创建对象.即,构造函数应该与其调用者签订合同,以提供一个功能和工作对象,可以在其上有意义地调用方法?这合理吗?

language-agnostic constructor exception

204
推荐指数
8
解决办法
6万
查看次数

python中的多个构造函数?

可能重复:
Python中有多个构造函数的干净,pythonic方法是什么?

是否不可能在Python中定义具有不同签名的多个构造函数?如果没有,绕过它的一般方法是什么?

例如,假设您想要定义一个类 City

我想能够说,someCity = City()或者someCity = City("Berlin"),第一个只提供默认名称值,第二个定义它.

python constructor

200
推荐指数
5
解决办法
21万
查看次数

继承构造函数

为什么这段代码:

class A
{
    public: 
        explicit A(int x) {}
};

class B: public A
{
};

int main(void)
{
    B *b = new B(5);
    delete b;
}
Run Code Online (Sandbox Code Playgroud)

导致这些错误:

main.cpp: In function ‘int main()’:
main.cpp:13: error: no matching function for call to ‘B::B(int)’
main.cpp:8: note: candidates are: B::B()
main.cpp:8: note:                 B::B(const B&)

B不应该继承A的构造函数吗?

(这是使用gcc)

c++ inheritance gcc constructor

199
推荐指数
5
解决办法
19万
查看次数