2017-11-22 12 views
-3

매개 변수가없는 클래스의 객체를 만들었지 만 프로그램의 어느 시점에서 생성자에 매개 변수를 전달하려고합니다.java의 생성자

무엇을해야합니까?

내 클래스에는 3 개의 레벨 또는 상속이 있으므로 생성자에서 'super()'를 사용하여 기본 클래스에 값을 전달합니다.

public void main(String args[]) 
{ 
    Obj obj1 = new Obj(); 

    // Some more code 
    // After the code i want to pass value to constructor of Obj class 
    // So the Constructor of obj class will pass value to the upperclass(parent class) 

    /* What should I write here? */ 
} 

미리 감사드립니다.

+3

나는 당신이 어디로 가고 있는지에 관해서는 분명하지 않다. 일단 객체를 인스턴스화하면 ** 생성자가 **로 호출되었으므로 다시 호출하려고 시도하는 것은 의미가 없습니다. – Makoto

+0

그렇지 않습니다. 생성자는 기존 객체를 수정하지 않고 새 객체를 생성하는 데 사용됩니다. – Michael

+0

나는 이것을 이해하지 못한다. ctor에 나중에 사용할 수없는 매개 변수가 필요한 경우 나중에 객체를 구성하십시오. –

답변

1

사실 후에는 생성자를 호출 할 수 없습니다. 인스턴스는 번만 번만 생성됩니다.

인스턴스에 원하는 것을 전달하려면 다른 방법 (문자 그대로)을 찾아야합니다. 어쩌면 생성자와 동일한 매개 변수를 사용하는 새로운 메서드를 작성해야할까요?

+0

하지만 그때 클래스에서 메서드를 만드는 경우 .... 어떻게 상위 클래스 생성자를 호출 할 수 있습니다 –

+1

@AsiBaka 수 없습니다. 공사는 단 한번만 가능합니다. 제작 후 기본/수퍼 클래스에서 해당 값을 설정할 수 없다면 원하는 것은 불가능합니다. 좋은 이유가 가장 많습니다. – nvoigt

+0

고마워요. –