728x90
반응형

Constructor 5

Java에서 다른 생성자를 호출하는 방법

질문 : Java에서 다른 생성자를 어떻게 호출합니까? (하위 클래스가 아닌 동일한 클래스 내에서) 다른 생성자를 호출 할 수 있습니까? 그렇다면 어떻게? 그리고 다른 생성자를 호출하는 가장 좋은 방법은 무엇일까요 (여러 가지 방법이있는 경우)? 답변 예, 가능합니다 : public class Foo { private int x; public Foo() { this(1); } public Foo(int x) { this.x = x; } } 같은 클래스의 생성자 대신 특정 슈퍼 클래스 생성자에 연결하려면 this 대신 super 를 사용하십시오. 하나의 생성자에만 연결할 수 있으며 생성자 본문의 첫 번째 문이어야합니다 . C #에 관한 것이지만 동일한 원칙이 적용되는 이 관련 질문을 참조하십시오. 출처 :..

React / React Native에서 constructor와 getInitialState를 사용하는 것의 차이점

질문 : React / React Native에서 생성자와 getInitialState를 사용하는 것의 차이점은 무엇입니까? 나는 둘 다 같은 의미로 사용되는 것을 보았다. 둘 다의 주요 사용 사례는 무엇입니까? 장단점이 있습니까? 하나가 더 나은 방법입니까? 답변 두 가지 접근 방식은 서로 바꿔서 사용할 수 없습니다. ES6 클래스 사용시 생성자에서 상태를 초기화하고 React.createClass getInitialState 메서드를 정의해야합니다. ES6 클래스 주제에 대한 공식 React 문서를 참조하십시오 . class MyComponent extends React.Component { constructor(props) { super(props); this.state = { /* initial ..

개발관련/other 2021.12.29

파이썬에서 슈퍼 생성자를 호출하는 방법

질문 : 파이썬에서 슈퍼 생성자를 호출하는 방법은 무엇입니까? class A: def __init__(self): print("world") class B(A): def __init__(self): print("hello") B() # output: hello 다른 모든 언어에서 슈퍼 생성자로 작업 한 것은 암시 적으로 호출됩니다. 파이썬에서 어떻게 호출합니까? 나는 super(self) 기대하지만 이것은 작동하지 않습니다. 답변 다른 답변과 함께 슈퍼 클래스 메서드 (생성자 포함)를 호출하는 여러 방법이 있지만 Python-3.x에서는 프로세스가 단순화되었습니다. Python-2.x class A(object): def __init__(self): print "world" class B(A): def ..

Python에서 여러 생성자를 갖는 깔끔하고 Pythonic 방법

질문 : Python에서 여러 생성자를 갖는 깔끔하고 Pythonic 방법은 무엇입니까? 이것에 대한 확실한 답을 찾을 수 없습니다. 내가 아는 한, 파이썬 클래스에서 __init__ 그렇다면이 문제를 어떻게 해결해야합니까? number_of_holes 속성이있는 Cheese 라는 클래스가 있다고 가정합니다. 치즈 오브젝트를 만드는 두 가지 방법을 어떻게 가질 수 있습니까? 이 작업을 수행하는 한 가지 방법 만 생각할 수 있지만 이것은 투박해 보입니다. class Cheese(): def __init__(self, num_holes = 0): if (num_holes == 0): # Randomize number_of_holes else: number_of_holes = num_holes 당신은 무엇을 ..

C ++에서 다른 생성자 (생성자 체인)에서 생성자를 호출 하는 방법

질문 : C ++에서 다른 생성자 (생성자 체인)에서 생성자를 호출 할 수 있습니까? C # 개발자로서 저는 생성자를 통해 실행하는 데 익숙합니다. class Test { public Test() { DoSomething(); } public Test(int count) : this() { DoSomethingWithCount(count); } public Test(int count, string name) : this(count) { DoSomethingWithName(name); } } C ++에서이 작업을 수행하는 방법이 있습니까? 클래스 이름을 호출하고 'this'키워드를 사용해 보았지만 둘 다 실패했습니다. 답변 C ++ 11 : 예! C ++ 11 이상에는 이와 동일한 기능 ( 위임 생성자 라..

728x90
반응형