Che tipo dovrebbe essere la mia classe di accedere a una classe e la classe si estendeva?

StackOverflow https://stackoverflow.com/questions/3567010

  •  01-10-2019
  •  | 
  •  

Domanda

si deve

public class Question

e

public class MultipleChoice extends Question

e

public class SurveyQuestions

dove SurveyQuestions ha

private static List<Question> q = new ArrayList<Question>();

In main continuare ad aggiungere le domande e tutte le cose che le domande sono composti alla lista.

Una volta fatto, si vuole per scorrere l'elenco

for (Question q : SurveyQuestions.getInstance().getListOfQuestions())

Domanda :? Che tipo dovrebbe "q" sia in modo che abbia accesso sia Domanda e scelta multipla

È stato utile?

Soluzione

Se per "l'accesso a" si intende "l'accesso ai metodi di" - non si può avere come MultipleChoice perché alcune domande potrebbero non essere tali. Così deve essere Question, e quindi si può verificare se si tratta di una scelta multipla da if(q instanceof MultipleChoice)

Altri suggerimenti

Si dovrebbe fare Question.

Non si può rendere MultipleChoice come Question pianura non è un MultipleChoice ... ma un MultipleChoice è un Question. Così Question può rappresentare entrambi i tipi.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top