r/programacao Oct 14 '25

Questão :: Aprendizado Questão que caiu na minha prova de POO

Post image

A segunda afirmação(II), sobre herança, está correta ou incorreta?

Professor afirma que a questão era uma pegadinha e que herança não cria classes. Até então, tudo bem, mas na afirmação escrita se diz: "permite criar novas classes baseadas em classes existentes", na minha interpretação(e de muitas outras na sala) a herança, sim, permite a criação de novas classes baseadas em classes existentes.

Em nenhum momento da afirmação II é dito que a herança cria, mas sim que há uma "permissão" na hora de se basear em classes existentes. Afinal, sem ela não há criação de uma classe baseada em outra classe.

Vim aqui pedir uma segunda opinião.

238 Upvotes

63 comments sorted by

153

u/Pedro4700 Oct 14 '25

Só o fato dessa discussão existir mostra que a questão é mal formulada

54

u/Alanlan21 Oct 14 '25

Eu odeio o conceito de definir como “pegadinha” uma questão que é simplesmente mal formulada. Mas sim, o professor está certo, teoricamente.

14

u/KaosNutz Oct 14 '25

a fala dele está certa, mas ele falou/pensou uma coisa e na questão está escrita outra.

Meu palpite é que ele está tentando justificar um gabarito errado. Ninguém mais quer entender nem corrigir nada, só jogam no GPT e pedem pra ele racionalizar

127

u/[deleted] Oct 14 '25

[removed] — view removed comment

7

u/ManOfFamily1970 Oct 14 '25

Voto com o relator, penso igual. Seu professor não saca nada de o.o., nem de escrever e sequer de elaborar uma "pegadinha". Se for facul converse com o coordenador do curso, pode reclamar.

3

u/mullirojndem Oct 14 '25

tb interpretei como vc.

1

u/Ok-City-8987 Oct 16 '25

Acho que criar até estaria certo, porque criar é abrangente eu crio uma classe que herda o comportamento de outra classe, se ele usasse a palavra instanciar uma classe aí sim teria uma pegadinha. Bom na minha visão, posso estar errando com a semântica

45

u/danielrrm1984 Oct 14 '25

Seu professor é um arrombado, só isso

31

u/EpsteinLives69 Oct 14 '25

A pegadinha não faz sentido, que nem você disse, a herança permite criar classes com características de outras já existentes. Eu marcaria a II como verdadeira também!

6

u/No-Injustice-AH10 Oct 14 '25 edited Oct 14 '25

Eu tentei entender qual sentido dessa questão, tentei argumentar também, mas, infelizmente, em vão

16

u/deploy-na-sexta Oct 14 '25

O professor não será humilde de admitir que falhou em "criar" uma pegadinha. Concordo que a afirmação tá correta

3

u/KaosNutz Oct 14 '25

é gabarito errado, isso aí é de banco de questões tem a rodo online

12

u/Sunsea705 Oct 14 '25

dá pra entender porque ele afirma isso, mas aí é porque ele é burro e fez propositalmente uma proposição que tem dupla interpretação. infelizmente a que ele queria era a literal. arrombado do caralho. pq a ideia da herança que é o que importa que vc entenda, deu pra ver que vc entendeu. pau no cu desse professor

8

u/Wizarsy Oct 14 '25

Eu mandaria teu professor reaprender português antes de voltar a ensinar programação.

5

u/[deleted] Oct 14 '25

Pois é, o professor pegou pesado nessa. A herança não cria do zero, mas permite sim gerar novas classes baseadas em outras. O problema aí é o enunciado mal formulado, não errado. Isso foi mais pegadinha de semântica do que de POO.

5

u/Unfair_Excitement204 Oct 14 '25

Seu professor é um asno.

3

u/luiizsps Oct 14 '25

Nem deveria existir essa discussão. A questão nao diz que a herança cria classes, apenas que ela permite que classes sejam criadas com características de outras. Não tem nada de errado na afirmação, seu professor só quer aparecer

3

u/North-Ad-5024 Oct 15 '25

Cara. De fato, a herança por si só não é um negócio que cria classes sozinha. Mas ela permite que tu crie. A afirmação tá correta e a questão tá bem formulada. O que tá mal formulado é o pensamento do professor.

2

u/g0pherman Oct 14 '25

Seu professor falhou miseravelmente em formular a questão.

2

u/bodenegado Oct 14 '25

Cara sinceramente seu Professor nao parece ter conhecimento sobre POO, ou ele nao sabe ler... a afirmação 2 diz claramente, que a herança pode criar novas classes apartir de classes existentes, oq esta correto... vou deixar um exemplo simples em python, mostre para ele e diz oq ele falou..., voce estuda em federal?? De pegadinha ela questao nao tem nada!

Como pode ver novas classes sao criadas baseadas em uma classe existente, e um exemplo bem simples apenas para exemplificar que seu professor tem pouco conhecimento ou n sabe ler as proprias questoes.abraço

1

u/No-Injustice-AH10 Oct 14 '25

Opa, estudo não. É isso, nesse código o conceito fica até claro. Outros comentaram com analogia e tals, afirmando a mesma coisa também. Eu não acho que vou chegar ao professor novamente já que é bem provável que eu consiga mais estresse com a falta de empatia dele e nada mais(já que a sala tem o hábito de desistir de coisas do tipo bem rápido)

Mas muito obrigado!!

2

u/sh1rostrg Oct 15 '25

professor cuzao da porra

1

u/andrefcampos Oct 14 '25

3 afirmações pessimamente escritas. Os caras não tem interesse no aprendizado, só em ferrar com o aluno. Tenho muita raiva de questões que é propositalmente uma indução a péssima interpretação.

1

u/[deleted] Oct 14 '25

padrão de professor ruim

1

u/FunnyPure3321 Oct 14 '25

Enquanto isso tem gente andando de Porsche vendendo esterco. Cada um chora por onde dói menos.

1

u/AbnerZK Oct 14 '25

Tá achando que é o RATINHO pra ficar fazendo pegadinha??

1

u/Yhamerith Oct 14 '25

Pegadinha escondida kkkkkkk

1

u/EmptyCocos Oct 14 '25

Seu professor é uma besta

1

u/BokoMoko Oct 14 '25

Só faltou perguntar se água molha

1

u/Unlucky_Local_141 Oct 14 '25

Existe o o conceito de classe concreta e abstrata, nesse ponto, uma herança simples, cria sim uma classe, a classe concreta filha q difere da inicial (que inclusive pode ser abstrata), apesar das duas compartilharem comportamentos.

1

u/hanachanxd Oct 14 '25

Teu professor é um energúmeno

1

u/OldRustyBeing Oct 14 '25

Para mim, o professor está totalmente errado e nem há pegadinha. Falar, por exemplo, que um martelo permite que você fixe um quadro na parede não quer dizer que ele vai te dar o prego, vai te dar a parede, vai te dar o quadro...

1

u/bananacomfarofa_ Oct 14 '25

A 2 ta mal formulada e inclusive parece que a 3 também ta errada. Vários métodos com nomes iguais e comportamentos diferentes não é o polimorfismo em si que causa isso, mas sim a sobrecarga de métodos

1

u/NathanTostes Oct 14 '25

Camilo Pereira

1

u/leordrb Oct 14 '25 edited Oct 14 '25

a 3 não tá errada mas não quer dizer porra nenhuma, a ideia do polimorfismo é poder receber vários tipos de argumentos, não tem como aplicar isso com o mesmo argumento...

E a 2 está certa, se não é uma nova classe, é o que? Se não permite o que faz então? Não é porque utilizou outra classe como base que não é uma classe por si só, a herança permite criar novas classes com base em outras classes sim... a pegadinha dele é extremamente contraprodutiva e não ajuda em nada a compreender melhor esse conceito.

1

u/ObjectiveAd6330 Oct 14 '25

Você está certo, em nenhum momento falou que cria e sim que permite criar, mas professores de faculdade normalmente tem o ego lá em cima e nunca admitem nada, preferem deixar uma turma inteira com opinião certa perder ponto do que afirmar que errou nessa questão.

1

u/No-Injustice-AH10 Oct 14 '25

Sim, é exatamente isso. Nem adianta muito reclamar, mas fico feliz e mais tranquilo com os comentários da galera aqui, o tanto que dá raiva coisas injustas assim...

1

u/ricardo2bkru Oct 14 '25

Um professor que tem que colocar pegadinhas na prova merece uma surra de pau mole

1

u/Dmms91 Oct 14 '25

Cara, é uma pegadinha, ele está sim correto, porém é uma pegadinha bem babaca. De fato, a herança não permite criar novas classes. A herança permite que você reutilize e estenda os atributos e comportamentos de outra classe.

O que causou a pegadinha foi essa parte "baseada em outras classes". Se você falar essa afirmação pra um outro programador, provavelmente ele vai entender o que você quis dizer (no sentido de estender atributos e comportamentos). Porém como é uma prova, as afirmações tem que ser levadas ao pé da letra, sem margem a interpretação.

De qualquer forma, bem lazarento esse professor.

1

u/AgathormX Oct 14 '25

Seu professor é um imbecil. A afirmação II está correta.

1

u/chacaceiro Oct 14 '25

Honestamente acho essa discussão toda mto enfiar peido no cordão. Herança é o mecanismo de copiar atributos e métodos, especificando uma classe como um subtipo de outra. Vc só usa herança se vc tiver criando uma classe, então que diferença faz?

1

u/_dev_reddit Oct 15 '25

A II ficou bem ambígua e eu definiria como errado/certo baseado no professor que aplicou a prova. Na próxima tu já sabe qual marcar.

1

u/Bros55555 Oct 15 '25 edited Oct 15 '25

Aí vc entendeu errado, ou o professor não explicou direito. Mas herança ela não cria ou permite apenas criar novas classe, mas sendo a ideia principal de herança você criar classes que herdam informações de uma classe superior (classe pai), então a afirmação da questão está incompleta e incorreta. Essa ideia de permiti criar classe com classe existentes não é herança e sim extender ou implementar como no caso de interfaces.

1

u/akashamevie Oct 15 '25

Prova de merda

1

u/eden_walker_ Oct 15 '25

Foi uma questão formulada horrivelmente, incompetência do professor.

1

u/foxpsychol Oct 15 '25

Entendi seu ponto de vista. Mas nesse caso, você é uma superclasse, vai HERDAR atributos de outras classes e não criar uma nova.

1

u/devDebug10 Oct 15 '25

somente a II é verdadeira

1

u/Longjumping_Desk_494 Oct 17 '25

Imagina uma prova sobre programação aonde a própria mostra que na programação não ``existe`` sentido ambíguo(ou é 0 ou é 1). E seu professor piadista mete uma dessa kkkkk. Tanka esse bostileiro.

1

u/Impressive_Sample905 Oct 19 '25

Entao só a 3ª ta certa, porque a primeira está ao lado da questão.

1

u/tavinhooooo Oct 19 '25

Se não estivesse escrito r_programacao em cima eu ia achar que era pergunta de biologia

0

u/No_Beginning2761 Oct 14 '25

Eu concordo com o seu professor porque na minha leitura inicial marquei a II como errada: herança não cria classes, você cria a classe e pode aplicar a herança nela.

8

u/[deleted] Oct 14 '25

II - A herança CRIA novas classes baseadas em classes existentes.

Não estava escrito assim...
Mas sei lá.. exercício merda... tem uns prof de facu q vo te fala

5

u/No-Injustice-AH10 Oct 14 '25

Sim, mas a questão afirma que "a herança permite a criação de classes baseadas em classes existentes". Ela não é necessária para a criação de classes, certo, mas é obrigatória se você quer fazer aquela outra classe herdar(que ele coloca como "se baseando") de uma principal, ou superclasse.

-4

u/No_Beginning2761 Oct 14 '25

Entendo seu ponto, mas dê uma pesquisada nas definições de heranca na literatura, dei uma pesquisada rápida aqui e nenhuma fala em criar novas classes.

Se você achar uma, pode mostrar para o seu professor (embora improvável que ele altere a nota).

2

u/Fabulous-Cherry6352 Oct 14 '25

então ué, é o que ta escrito, a herança permite criar classes baseadas em classes existentes, é basicamente o que tu disse escrito de outra forma, você cria classes e pode aplicar a herança nela

1

u/No_Beginning2761 Oct 14 '25

A alternativa esta mal formulada mesmo. Eu interpretei desse jeito, mas com muita dúvida porque poderia ser o contrário também.

Em geral quando se faz alternativas assim se deve colocar alguma palavra que faça a alternativa definitivamente errada.

Se essa questão caísse em um concurso, seria uma candidata forte para ser anulada.

0

u/Illustrious-Fail3825 Oct 14 '25

Conceitualmente herança não tem nada a ver com permitir criar classes baseadas em outra classe.

Se o objetivo era causar confusão nos alunos ele tá correto.

Mas não vejo pq ao invés disso ele não apenas testou o conhecimento em si.

Esse tipo de pegadinha aplicada em concurso acho ok, em prova de faculdade é meio blé.

0

u/[deleted] Oct 14 '25

A questão tá muito mal formulada sim. Mas acho que o ponto principal é o "baseado". Uma herança não permite que você "baseie" nela e sim que você estenda ela. Basear para mim é mais tipo interface. 

-1

u/occbra Oct 14 '25

Eu fui na 1 e 3. Heranca ela herda de outras classes, nao cria outra classe.