Ir ao conteúdo

Posts recomendados

Postado

Há 3 tipos de alunos: desinteressados, pouco interessados
e muito interessados.
Cada aluno é um observador(observer) e reagirá diferente
ao ser notificado de que as notas estão no portal de aluno.
O portal do aluno é o observável(subject).

Implemente o subject “postando notas” e os alunos
reagindo ao ver as notas. Use systou.

 

boa noite preciso que me ajudem com esse

package padraoobserver;

import java.util.ArrayList;
import java.util.List;
import java.util.Observable;
import java.util.Observer;

public class PortalDoAluno implements IPortalDoAluno{
    private List<Observer>observers;
    public double notas;
    
    public void atualizarinformações(double notas){
        this.notas=notas;
        notify();
    }
    public PortalDoAluno(){
        this.observers=new ArrayList<Observer>();
    }
    public void adicionar(Observer observer){
        observers.add(observer);
    }
    public void remover(Observer observer){
        int notas=observers.indexOf(observer);
        if(notas>=-1){
            System.out.println("");
            System.out.println("sairam as notas dos alunos:"+observer.getClass().getName());
            System.out.println("");
            
            observers.remove(observer);
        
        }
    }
    
    public void notifyObservers(){
        System.out.println("");
        System.out.println("Nova Atualição");
        System.out.println("");
        for(Observer o:observers){
          o.update((Observable) o, o);
package padraoobserver;

interface IPortalDoAluno {
    
}
package padraoobserver;

import java.io.PrintStream;
import java.util.Locale;
import java.util.Observer;

public abstract  class AlunosDesinterressados implements Observer{
    public AlunosDesinterressados notas;
    private String novasnotas;
    
    public AlunosDesinterressados(AlunosDesinterressados notas){
        this.notas=notas;
        this.notas.adicionar(this);
    }

    private void adicionar(AlunosDesinterressados aThis) {
        
    }
    public void update(){
        System.out.println("AlunosDesinterressados:dados atualizados->novasnotas="+String.format("%.2f",notas.novasnotas+"novasnotas="));
                
                
    }
}
package padraoobserver;

import java.util.Observer;

public abstract class AlunosMuitoInterressados implements Observer{
    public AlunosMuitoInterressados notas;
    private Object[] novasnotas;
    
    public AlunosMuitoInterressados(AlunosMuitoInterressados notas){
        this.notas=notas;
        this.notas.adicionar(this);
    }

    private void adicionar(AlunosMuitoInterressados aThis) {
        
    }
    public void update(){
        System.out.println("AlunosMuitoInterressados:dados atualizados->novasnotas="+String.format("%2.f",notas.novasnotas));
    }
}
package padraoobserver;

import java.util.Locale;
import java.util.Observer;

public abstract class AlunosPoucoInterressados implements Observer{
    public AlunosPoucoInterressados notas;
    private Object[] novasnotas;
    
    
    public AlunosPoucoInterressados(AlunosPoucoInterressados notas){
        this.notas=notas;
        this.notas.adicionar(this);
    }

    private void adicionar(AlunosPoucoInterressados aThis) {
       
    }
    public void update(){
        System.out.println("AlunosPoucoInterressados:dados atualizados->novasnotas="+String.format("%2.f",notas.novasnotas));
    }
}

até amanhã ás 18:40 

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...