Java OOP에서 작업 한 이후로 꽤 오래되었으므로 조금 녹슬었고 설명이 필요했습니다.C# 함수에 수퍼 클래스 전달 (Java 오버추어 사용)
자바에서는 올바르게 기억하면 수퍼 클래스를 선언하고 서브 클래스를 인스턴스화 할 수 있습니다. 예 : Superclass myObject = new Subclass()
.
그런 다음 myObject를 Superclass 매개 변수를 허용하는 함수로 전달하고 참조를 사용하여 모든 Superclass 특성/메소드에 액세스 할 수 있습니다.
Submitted-specific methods/variables에 접근하고 싶다면 myObject (Superclass로 선언 된)로 직접 할 수 있습니까? 아니면 Subclass 유형으로 변환해야합니까?
이제 C#으로 롤 오버하면 같은 논리가 적용됩니까? 이 동작을 복제하려고하는 이상한 문제가 발생했습니다. 내가 찾고 있어요 특정 사용 사례가 : 나뿐만 아니라 튜토리얼에서이 물건을 찾고 있지만있어
//These are just declarations for ease-of-reading
Superclass bar = new Subclass();
public static void doSomething(Superclass foo) {...}
//Logic
doSomething(bar);
bar.superOnly() //Should this work?
bar.subOnly() //Should this work?
bar.subOverrided() //Will this call the superclass or subclass version?
대부분의 예제는 간단한 것 같다 "서브 클래스 인 myObject = 새로운 서브 클래스()"사소한 출력 인스턴스 . 지금까지 함수 매개 변수의 불투명 한 세계를 다루지는 못했습니다.
누구든지 나를 도울 수 있거나 C#에서 함수 매개 변수와 OO를 다루는 특정 리소스를 가리킨다면 크게 감사하겠습니다.
매개 변수와 관련하여 다음 기사를 읽어 보시기 바랍니다. http://www.yoda.arachsys.com/csharp/parameters.html –