The polymorphism tag has no wiki summary.
1
vote
1answer
106 views
How do multiple levels of inheritance affect virtual function call overhead in C++?
I am considering using a class hierarchy with more than a single level of inheritance, where virtual member functions form a "chain", for example:
struct Base
{ virtual void foo(); };
struct D1 : ...
1
vote
1answer
77 views
Ignoring the generic part of a type while an object is being passed
I have a message class that holds the name of a destination, and a generic variable acting as the message payload
public class Message<T> {
public string Destination
public T Payload
...
1
vote
4answers
283 views
When to not use dynamic in C# [on hold]
I'm making a class similar to the following:
public class KeyValue
{
public readonly string key;
public readonly object value;
}
Value could be of any object type as a result of this ...
2
votes
3answers
179 views
Is 'design with types first' ultimately the same as 'design with interfaces first'?
In Object Oriented Programming, we're taught to think in terms of Polymorphism (the idea that the implementation is decoupled from the interface - and that it makes sense to think of the interface ...
3
votes
1answer
174 views
Redundancy caused by polymorphism
I have two chat rooms, one has administration behaviour, and one doesn't. I have factored out all of the common code into a base chat room, but the AdministerChatroom behaviour I have pulled out into ...
3
votes
4answers
229 views
Is there a way to avoid type-checking in this scenario?
I have a class SuperClass with two subclasses SubClassA and SubClassB. I have a method in a different class which takes a SuperClass parameter.
The method should do different things depending on the ...
1
vote
2answers
133 views
Is it an anti-pattern to use void* and enums to enable type-checking?
Say in a game engine, you have Objects that composited of different components. One of these is a RenderComponent which can be either a Mesh, a Sprite or a Light.
Now, all these are vastly different ...
2
votes
2answers
251 views
Does it make sense to use interfaces if you don't have polymorphism?
Suppose I have distinct classes that have the same behavior, which can be represented like this:
public interface Behavior {
void operationA();
}
public class ImplementerA implements Behavior {
...
0
votes
0answers
24 views
How to deal with multiple output modes of multiple types?
Note: The business domain being a bit complicated to explain, I replaced the names of actual classes by more illustrative examples.
I'm writing an application in which the business layer returns a ...
2
votes
5answers
319 views
Classic inheritance problem?
I keep seeing the following pattern when people learn about OOP:
Problem: How do I put objects of different but related types into a container?
Solution: Inherit from a common base class.
New ...
1
vote
4answers
239 views
Combinatorial explosion of interfaces: How many is too many?
I'm a relative newcomer to OOP, and I'm having a bit of trouble creating good designs when it comes to interfaces.
Consider a class A with N public methods. There are a number of other classes, B, C, ...
0
votes
1answer
115 views
Clean way to use mutable implementation of Immutable interfaces for encapsulation
My code is working on some compost relationship which creates a tree structure, class A has many children of type B, which has many children of type C etc. The lowest level class, call it bar, also ...
0
votes
1answer
94 views
overriding implemented base class methods
I read somewhere that the chain of inheritance breaks when you alter a behavior from derived class. What does "altering a behavior" mean here? Is overriding an already implemented method in base class ...
2
votes
1answer
101 views
What's the right OO way to create a counter/inventory class that works for both differentiated and undifferentiated countables?
You are writing a videogame about trading beans. Red beans, black beans, pinto beans, you name it. As everybody knows all beans are the same. You write the "Inventory" class for a trader in that ...
4
votes
4answers
2k views
What are the benefits of using Polymorphism 'in the real world' - as opposed to not using it? [duplicate]
I understand what Polymorphism is, but since I only ever programmed in Java and 'dived' pretty quickly into OOP, I'm having a hard time understanding exactly what it's benefits are (and I feel the ...
3
votes
1answer
120 views
Different scoring algorithms for different competition elements
I am creating a scoring system for a competition that is somewhat obscure, but it resembles the Olympics in terms of its high-level structure. Therefore, I will ask my question in terms of an ...
4
votes
2answers
688 views
What is the process of determining which method in a class hierarchy should execute known as?
I thought I understood inheritance and polymorphism, but I was given this question, and I can't, for the life of me, figure out what the proper answer is or what they're trying to get at:
The ...
1
vote
2answers
121 views
Does subtype polymorphism distinguish between inheriting behavior, or inheriting an interface?
To provide some context, I've seen some comments lately that equate inheriting behavior from a supertype, with inheriting a pure interface with no behavior. But there are pretty significant, and ...
0
votes
0answers
84 views
Succinct Lazy Initialization Pattern
Background
I often use the following lazy initialization pattern:
public class Clazz {
private Object object;
private Object getObject() {
Object object = this.object;
if( object == ...
0
votes
0answers
29 views
How would I handle a set of differing event classes with differing handler interfaces in a single event processor?
I'm working on an event processor framework for a simple game I'm writing, in which multiple types of events are handled in a loop. Since these events carry distinct pieces of data (i.e. one carries a ...
1
vote
5answers
171 views
Clarification about Polymorphism / Inheritance
I am trying to better my understanding of polymorphism.
Say I have a base class called baseClass with one method called foo() and I have three derived classes called derived1 , derived2 and derived3 ...
4
votes
3answers
395 views
Java - Use polymorphism or bounded type parameters
Suppose I have this class hierarchy...
public abstract class Animal {
public abstract void eat();
public abstract void talk();
}
class Dog extends Animal {
@Override
public void eat() ...
2
votes
1answer
112 views
Is it bad practice to encapsulate a single operation in a class? [duplicate]
I recently had a back and forth over at StackOverflow about my answer to this question.
The question was simple. The author wanted to transform a number into an abbreviated version that appended a K, ...
1
vote
3answers
116 views
Refactoring - Utility classes behavior under a common interface
I was suggested to put my question here, so I'm doing so ;)
I need a common interface which represents some specific behavior:
public interface Contract(){
public void methodA();
public void ...
1
vote
1answer
372 views
Readability vs benefits of polymorphism
We are dealing with a lot of CRUD operations in our application. Each database table has one or more corresponding SQLContainer instances to perform various types of operations. All of these ...
2
votes
4answers
497 views
Confusion about inheritance
I know I might get downvoted for this, but I'm really curious.
I was taught that inheritance is a very powerful polymorphism tool, but I can't seem to use it well in real cases.
So far, I can only ...
0
votes
1answer
193 views
Does C++ support subtyping?
I know it might be a silly question to ask, but I didn't quite get an a absolute clear answer on this matter, so I thought I'd put it here.
Does c++ support the subtyping in the sense that it ...
13
votes
4answers
678 views
Switch vs Polymorphism when dealing with model and view
I can't figure out a better solution to my problem. I have a view controller that presents a list of elements. Those elements are models that can be an instance of B, C, D, etc and inherit from A. So ...
1
vote
3answers
375 views
Is it bad practice to check object types with an identifying member variable?
Preamble:
I am making a simple board game in C++, in which AI characters move around squares on the board. There are different types of squares, each inherited from an abstract class, each with ...
2
votes
2answers
1k views
Interview question “What is virtual function”
It was funny for me, and I'm interesting the reaction for this question of the community. It was interview for C++/Qt developer, and question was asked "What is virtual function". Not something like ...
8
votes
3answers
483 views
Two components offering the same functionality, required by different dependencies
I'm building an application in PHP, using Zend Framework 1 and Doctrine2 as the ORM layer. All is going well. Now, I happened to notice that both ZF1 and Doctrine2 come with, and rely on, their own ...
0
votes
1answer
143 views
Polymorphism versus authorization
I have something bother me in the understanding of polymorphism (vs role):
Note: I am using rails (but it's a general question)
I have 4 models:
User
Pro
Customer
Company
There is a polymorphic ...
3
votes
2answers
165 views
how to follow python polymorphism standards with math functions
So I am reading up on python in Mark Lutz's wonderful LEARNING PYTHON book. Mark makes a big deal about how part of the python development philosophy is polymorphism and that functions and code should ...
0
votes
2answers
104 views
Making subclass more type-specific with accessors
I have a super class: TriggerManager with a subclass TimedTriggerManager. NOTE: I'm working in java
TimedTriggerManager only deals with TimedTrigger s, a subclass of Trigger. TriggerManager ...
7
votes
4answers
452 views
Besides polymorphism, what's compelling about OOP? [duplicate]
When I first came to OOP (at first in Java, and then C++) after years of working in C and VB, it was amazing. The idea of extending existing behaviour and operating generically over things of related ...
5
votes
3answers
687 views
is down-casting always bad?
At my company, we have many different "services" that work in parallel and send messages to each other using a common messaging system. All message objects are derived from a common generic object we ...
3
votes
3answers
454 views
Novel polymorphism - any reasons for this code?
As part of my work on a legacy C# application I've come across a novel (to me) use of an interface & concrete implementations. I can't think of any reason why you'd do the following, but I'm ...
2
votes
2answers
513 views
Questions about Polymorphism
So I understand the importance of Polymorphism, including how vital it is. But something I don't quite understand is what about the Constructor and any inherited Class the initial Base Class may ...
7
votes
4answers
531 views
Design pattern for polymorphic behaviour while allowing library separation
Let's say I have a hierarchy of Item classes: Rectangle, Circle, Triangle. I want to be able to draw them, so my first possibility is add a virtual Draw() method to each:
class Item {
public:
...
6
votes
4answers
4k views
Replacement for instanceof Java?
So I'm fairly new to programming in the real world (outside of academic projects) and have come across lots of posts saying that using instanceof is a bad thing to use to determine what class a ...
7
votes
8answers
1k views
Introducing polymorphism to new programmers
I've been teaching Java to a group of four people for about four months now. Prior to this, they've all had very limited or no other experience programming.
We've gotten through basic control ...
1
vote
2answers
118 views
Interface extension
Suppose that I have an input stream interface, which defines a method for reading data. I also have a seekable interface which defines a method for seeking. A natural way of defining a input file is ...
1
vote
1answer
316 views
What does “polyadic” mean in the context of functional programming and type systems?
And how does it (or does not) correspond to "polymorphic"? Occasionally I see this notion like in: Implement and represent polyadic operations. I checked Wiktionary but it only gives a general ...
12
votes
6answers
498 views
OO Design, how to model Tonal Harmony?
I have started to write a program in C++ 11 that would analyse chords, scales, and harmony.
The biggest problem I am having in my design phase, is that the note 'C' is a note, a type of chord (Cmaj, ...
5
votes
1answer
436 views
Abstract Factory Method and Polymorphism
Being a PHP programmer for the last couple of years, I'm just starting to get into advanced programming styles and using polymorphic patterns. I was watching a video on polymorphism the other day, and ...
0
votes
1answer
408 views
Java Dynamic Binding
I am having trouble understanding the OOP Polymorphic principl of Dynamic Binding ( Late Binding ) in Java. I looked for question pertaining to java, and wasn't sure if a overall answer to how dynamic ...
4
votes
2answers
267 views
Alternatives to type casting in your domain
In my Domain I have an entity Activity which has a list of ITasks. Each implementation of this task has it's own properties beside the implementation of ITask itself. Now each operation of the ...
3
votes
3answers
1k views
How to setup the c++ rule of three in a virtual base class
I am trying to create a pure virtual base class (or simulated pure virtual)
my goal:
User can't create instances of BaseClass.
Derived classes have to implement default constructor, copy ...
4
votes
2answers
419 views
Reasons behind polymorphism related behaviour in java
I read this code somewhere
class Foo {
public int a;
public Foo() {
a = 3;
}
public void addFive() {
a += 5;
}
public int getA() {
...
5
votes
13answers
878 views
Limitations of Polymorphism in statically typed languages
I program mostly in statically typed languages, like C++ and Java. A common strategy employed in languages like these to handle dealing with collections of objects which are related, but which need ...