«inheritance» 태그된 질문

상속은 객체 지향 프로그래밍의 시스템으로, 객체가 자신의 정의를 제공하지 않고도 전방 유형으로 정의 된 작업을 지원할 수 있습니다. 객체 지향 프로그래밍에서 다형성의 주요 벡터입니다.

5
dict을“완벽하게”재정의하는 방법은 무엇입니까?
가능한 한 dict 의 하위 클래스를 "완벽하게"만들려면 어떻게 해야합니까? 최종 목표는 단순한를 가지고있다 DICT 키가 소문자되는합니다. 이 작업을 수행하기 위해 재정의 할 수있는 몇 가지 작은 기본 요소가 있어야하는 것처럼 보이지만 모든 연구와 시도에 따르면 그렇지 않은 것처럼 보입니다. 내가하면 오버라이드 (override) __getitem__/__setitem__ 다음 get/ set일을하지 않습니다. 어떻게 작동시킬 수 …


3
프로토 타입 기반 대 클래스 기반 상속
JavaScript에서 모든 객체는 동시에 인스턴스와 클래스입니다. 상속을 위해 모든 객체 인스턴스를 프로토 타입으로 사용할 수 있습니다. 파이썬, C ++ 등에서는 별도의 개념으로 클래스와 인스턴스가 있습니다. 상속을 수행하려면 기본 클래스를 사용하여 새 클래스를 작성해야하며,이를 사용하여 파생 인스턴스를 생성 할 수 있습니다. JavaScript가 왜이 방향으로 진행 되었습니까 (프로토 타입 기반 객체 방향)? …

3
this 포인터를 통해 템플릿 기본 클래스 멤버에 액세스해야하는 이유는 무엇입니까?
클래스 아래에 있다면하지 단순히 가질 수 템플릿 x에서 derived클래스입니다. 그러나 아래 코드에서는 을 사용해야 this->x합니다. 왜? template <typename T> class base { protected: int x; }; template <typename T> class derived : public base<T> { public: int f() { return this->x; } }; int main() { derived<int> d; d.f(); return …

10
AngularJS 컨트롤러가 동일한 모듈의 다른 컨트롤러에서 상속 할 수 있습니까?
모듈 내에서 컨트롤러는 외부 컨트롤러에서 속성을 상속 할 수 있습니다. var app = angular.module('angularjs-starter', []); var ParentCtrl = function ($scope, $location) { }; app.controller('ChildCtrl', function($scope, $injector) { $injector.invoke(ParentCtrl, this, {$scope: $scope}); }); 예를 통해 : 데드 링크 : http://blog.omkarpatil.com/2013/02/controller-inheritance-in-angularjs.html 모듈 내부의 컨트롤러가 형제로부터 상속받을 수 있습니까? var app = angular.module('angularjs-starter', …

14
새로운 것과 재정의의 차이
다음의 차이점이 무엇인지 궁금합니다. 사례 1 : 기본 클래스 public void DoIt(); 사례 1 : 상속 된 클래스 public new void DoIt(); 사례 2 : 기본 클래스 public virtual void DoIt(); 사례 2 : 상속 된 클래스 public override void DoIt(); 사례 1과 2는 모두 내가 실행 한 테스트를 기반으로 …

4
super ()가 오류와 함께 실패 : TypeError 부모가 객체를 상속하지 않으면 "인수 1은 classobj가 아니라 형식이어야합니다"
알아낼 수없는 오류가 발생합니다. 샘플 코드에 어떤 문제가 있습니까? class B: def meth(self, arg): print arg class C(B): def meth(self, arg): super(C, self).meth(arg) print C().meth(1) 'super'내장 메소드의 도움으로 샘플 테스트 코드를 얻었습니다. 오류는 다음과 같습니다. Traceback (most recent call last): File "./test.py", line 10, in ? print C().meth(1) File "./test.py", …

13
std :: vector에서 상속하지 않아야합니다.
좋아, 이것은 고백하기가 정말로 어렵지만, 나는 지금부터 물려받을 강한 유혹을 받는다 std::vector. 벡터에 대해 약 10 개의 사용자 정의 알고리즘이 필요하며 벡터의 직접 멤버가되기를 바랍니다. 그러나 당연히 나는 나머지 std::vector인터페이스 를 원합니다 . 법을 준수하는 시민으로서의 첫 번째 아이디어 std::vector는 MyVector수업에 회원 을 두는 것이 었습니다 . 그러나 모든 std …
189 c++  oop  inheritance  stl  vector 

9
Maven 프로젝트 버전 상속-상위 버전을 지정해야합니까?
부모 프로젝트 : A, 하위 프로젝트 : B A / pom.xml : <groupId>com.dummy.bla</groupId> <artifactId>parent</artifactId> <version>0.1-SNAPSHOT</version> <packaging>pom</packaging> 그리고 B / pom.xml에는 다음이 있습니다. <parent> <groupId>com.dummy.bla</groupId> <artifactId>parent</artifactId> <version>0.1-SNAPSHOT</version> </parent> <groupId>com.dummy.bla.sub</groupId> <artifactId>kid</artifactId> B가 부모로부터 버전을 상속 받기를 원하므로 필자의 경우 유일한 위치 0.1-SNAPSHOT는 A/pom.xml입니다. 내가 제거한다면 <version>0.1-SNAPSHOT</version>에서 B/pom.xml부모 섹션에서, 받는다는 부모의 누락 된 …
189 inheritance  maven 

2
Ruby 클래스가 다른 클래스의 서브 클래스인지 테스트
클래스가 다른 클래스에서 상속되는지 테스트하고 싶지만 그 방법이 존재하지 않는 것 같습니다. class A end class B < A end B.is_a? A => false B.superclass == A => true 내가 원하는 것의 사소한 구현은 다음과 같습니다. class Class def is_subclass_of?(clazz) return true if superclass == clazz return false if self …



8
코 틀린에서 데이터 클래스 확장
데이터 클래스는 Java의 구식 POJO를 대체하는 것으로 보입니다. 이러한 클래스가 상속을 허용 할 것으로 예상되지만 데이터 클래스를 확장하는 편리한 방법은 없습니다. 내가 필요한 것은 다음과 같습니다. open data class Resource (var id: Long = 0, var location: String = "") data class Book (var isbn: String) : Resource() component1()메소드 의 …

6
다중 상속으로 부모 클래스 __init__ 호출, 올바른 방법은 무엇입니까?
다중 상속 시나리오가 있다고 가정 해보십시오. class A(object): # code for A here class B(object): # code for B here class C(A, B): def __init__(self): # What's the right code to write here to ensure # A.__init__ and B.__init__ get called? 작성하는 두 가지 일반적인 방법있다 C'들 __init__: (오래된 스타일) …

10
파이썬에서 메소드를 재정의하고 있음을 어떻게 표시합니까?
예를 들어 Java에서 @Override주석은 재정의에 대한 컴파일 타임 확인 기능을 제공 할뿐만 아니라 자체 문서화 코드도 우수합니다. 나는 단지 문서를 찾고 있습니다 (pylint와 같은 체커에 대한 지표이지만 보너스입니다). 어딘가에 주석이나 docstring을 추가 할 수 있지만 파이썬에서 재정의를 나타내는 관용적 방법은 무엇입니까?

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.