Ir ao conteúdo
  • Cadastre-se

Java Quais variáveis posso usar como parâmetro de funções?


Posts recomendados

Eu estava fazendo minha atividade de completar e quero que vocês vejam se podem me ajudar:

import java.math.BigDecimal;

public abstract class Numero {
    protected Double valor;
    public double getValor;
       
}

 

 

 

----------

class Inteiro extends Numero{
    private Integer classValor;

    public Inteiro(int classValor) { // aq eu coloquei int
        this.classValor = classValor;
    }

    public Integer getValor() { //integer
          int valor = 15;
        return valor;
    }
}

 

 

----------

import java.math.BigDecimal;

class Decimal extends Numero {
    private BigDecimal classValor;

    public Decimal(BigDecimal classValor) {
        this.classValor = classValor;
    }

    public double getValor() {
        valor = classValor.doubleValue(); // essa parte aqui fica certo no netbens, mas no eclipse da erro
        return valor;
    }
    }

 

.................

class Flutuante  extends Numero {
    private Float classValor;

        public Flutuante (float classValor) { // aq eu coloquei float
        this.classValor = classValor;
    }

    public Float getClassValor() {
        return classValor;
    }

        
        
}

 

 

 

.................

 

 


 

public class MainSomador {

    public static Double somador(_______ num1, _______ num2) {
        Double soma = num1._______ + num2._______;
        return soma;
    }

    // testando o método:
    public static void main(String args[]) {
        ________ v1 = new Inteiro(2);
        ________ v2 = new Flutuante(4.0f);
        
        Double res1 = somador(v1, v2); 
        System.out.println("Soma = " + res1); // Soma = 6.0
        
        ________ v3 = new Decimal(new BigDecimal("5"));
        ________ v4 = new Inteiro(10);
        
        Double res2 = somador(v3, v4);
        System.out.println("Soma = " + res2); // Soma = 15
    }
}

 

 

já esse Main eu não sei como completar

 


 

Link para o comentário
Compartilhar em outros sites

  • Moderador

Caro usuário,

 

Seja bem-vindo ao Clube do Hardware.

 

No intuito de servir como fonte de pesquisa no caso de instituições de ensino, informamos que incorrer no resolvimento por completo de questões relacionadas a disciplinas escolares de cursos técnicos e faculdades podem ser revistas e removidas pela Equipe de Moderação do Clube do Hardware.

 

Para sanar dúvidas sobre esse tipo de problema, por gentileza, publique o passo a passo do desenvolvimento da questão, projeto, monografia ou conteúdo em dúvida para que possamos analisar se a resposta está correta ou não, ou para que possa ser auxiliado com a dúvida no desenvolvimento do exercício.

 

Infelizmente, não há como resolver os trabalhos pelos usuários. O objetivo do Clube do Hardware é auxiliar seus usuários a encontrar soluções para que possam sanar suas dúvidas, e não de trazer soluções prontas para seus usuários. Além disso, copiar e colar respostas que não são de autoria própria do qualquer usuário é considerado plágio, o que é ilegal.

 

Esperamos que compreenda.

 

Atenciosamente,

Equipe Clube do Hardware

 

Link para o comentário
Compartilhar em outros sites

Em 18/01/2022 às 13:13, Berus-kun disse:

Eu estava fazendo minha atividade de completar e quero que vocês vejam se podem me ajudar:

import java.math.BigDecimal;

public abstract class Numero {
    protected Double valor;
    public double getValor;
       
}

 

 

 

----------

class Inteiro extends Numero{
    private Integer classValor;

    public Inteiro(int classValor) { // aq eu coloquei int
        this.classValor = classValor;
    }

    public Integer getValor() { //integer
          int valor = 15;
        return valor;
    }
}

 

 

----------

import java.math.BigDecimal;

class Decimal extends Numero {
    private BigDecimal classValor;

    public Decimal(BigDecimal classValor) {
        this.classValor = classValor;
    }

    public double getValor() {
        valor = classValor.doubleValue(); // essa parte aqui fica certo no netbens, mas no eclipse da erro
        return valor;
    }
    }

 

.................

class Flutuante  extends Numero {
    private Float classValor;

        public Flutuante (float classValor) { // aq eu coloquei float
        this.classValor = classValor;
    }

    public Float getClassValor() {
        return classValor;
    }

        
        
}

 

 

 

.................

 

 


 

public class MainSomador {

    public static Double somador(_______ num1, _______ num2) {
        Double soma = num1._______ + num2._______;
        return soma;
    }

    // testando o método:
    public static void main(String args[]) {
        ________ v1 = new Inteiro(2);
        ________ v2 = new Flutuante(4.0f);
        
        Double res1 = somador(v1, v2); 
        System.out.println("Soma = " + res1); // Soma = 6.0
        
        ________ v3 = new Decimal(new BigDecimal("5"));
        ________ v4 = new Inteiro(10);
        
        Double res2 = somador(v3, v4);
        System.out.println("Soma = " + res2); // Soma = 15
    }
}

 

 

já esse Main eu não sei como completar

 


 

Alguns pontos pra tentar ajudar:

1- Eu não sei se é uma boa ideia usar o mesmo nome genérico "classValor" para todos os tipos de valores dessas classes diferentes, o normal é você criar um nome que tenha a ver com o tipo de variável que você está usando. Por exemplo: o classValor de BigDecimal poderia levar o nome de "bigDecValor" ou algo assim.

2- Você colocou um construtor como "setter" pelo que eu entendi. Mas não entendi bem o ponto, era pra completar alguma coisa nessa parte do código? Você optou por usar o tipo primitivo "int" como parâmetro a ser recebido ao invés da wrapper class "Integer", o que teoricamente dá na mesma eu acho, a diferença é que um é classe e o outro não. Mas também não entendi porque você deixou isso como comentário no programa. 

3- Na parte do Main, v1, v2, v3 e v4 são os nomes das variáveis que instanciam os objetos de cada classe que você criou, então por exemplo, se v1 = new Inteiro(), então v1 é do tipo Inteiro, concorda? Logo, daria no mesmo dizer:

Inteiro v1;

v1 = new Inteiro(2);

Ainda no Main, no caso dos parâmetros recebidos pelo método "somador", eles devem ser do tipo Double (número quebrado), então ele vai somar esses 2 números recebidos, armazenar o resultado na variável "soma" e retornar esse resultado. 

Link para o comentário
Compartilhar em outros sites

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...