24/11/2023, 01:26 Java Methods: Trabalhando com métodos em Java
Artigo
Invista em você! Saiba como a DevMedia pode
ajudar sua carreira.
Trabalhando com métodos
em Java
Veja neste artigo como trabalhar com métodos na linguagem Java,
dividindo o código em blocos, facilitando a sua implementação e
manutenção.
Anotar Marcar como concluído
Artigos
Java
Trabalhando com métodos em Java
Afinal, o que são os métodos em Java?
Os programas em Java são escritos combinando métodos e classes que são
predefinidos na API do Java (Java Application Programming Interface
56 ou
https://www.devmedia.com.br/trabalhando-com-metodos-em-java/25917 1/19
24/11/2023, 01:26 Java Methods: Trabalhando com métodos em Java
bibliotecas de classes Java). Em construções de grandes softwares, são criadas em
classes pequenas partes de código, que são identificados como métodos.
Saiba mais: métodos em Java
Criando um serviço RESTful com Java - Aula 1 - Introdução
Relacionado: Cursos Java
Trabalhando com Métodos em Java
Os métodos são conhecidos como funções, ações de execuções ou procedimentos,
sendo responsáveis por ajudar no design do sistema (separação por blocos), e na
56
https://www.devmedia.com.br/trabalhando-com-metodos-em-java/25917 2/19
24/11/2023, 01:26 Java Methods: Trabalhando com métodos em Java
reutilização de software, podendo ser aproveitados métodos já existentes para a
construção de novos sistemas.
As classes que armazenam esses métodos são conhecidas como projetos de
objetos, onde são definidos os atributos que o objeto terá e os métodos projetados
para realizar as tarefas da classe.
Por exemplo, quando criado um método com a ação de depositar um valor para
uma conta bancária, dentro desse método são incluídas as ações que irão retornar
algum valor, trabalhar em uma variável ou até mesmo chamar outro método já
criado.
1 public class Conta {
2
3 private Double saldo;
4
5 public void setSaldo(Double saldo) {
6 this.saldo = saldo;
7 }
8
9 public Double getSaldo() {
10 return saldo;
11 }
12
13 public void depositar(Double valor){
14 saldo += valor;
15 }
16
17 public void verificaSaldo(){
18 System.out.println("Valor do Saldo: "+getSaldo());
19 }
20 }
Listagem 1. Classe Conta com os métodos e atributos
56
https://www.devmedia.com.br/trabalhando-com-metodos-em-java/25917 3/19
24/11/2023, 01:26 Java Methods: Trabalhando com métodos em Java
Na Listagem 2 usamos uma variável que contém uma referência a um objeto,
seguido por um ponto (.) que faz a invocação de todos os métodos e variáveis
públicas.
1 public static void main(String[] args) {
2
3 //INSTANCIA A CLASSE
4 Conta conta = new Conta();
5
6 //DEFINE UM VALOR DE SALDO
7 conta.setSaldo(633.00);
8
9 //DEFINE VALOR PARA DEPOSITAR
10 conta.depositar(555.0);
11
12 //RESGATA VALOR
13 conta.verificaSaldo();
14
15 }
Listagem 2. Invocação dos métodos da classe Conta
Métodos static em Java
Os métodos static ou métodos da classe são funções que não dependem de
nenhuma variável de instância, quando invocados executam uma função sem a
dependência do conteúdo de um objeto ou a execução da instância de uma classe,
conseguindo chamar direto qualquer método da classe e também manipulando
alguns campos da classe.
Os métodos static tem um relacionamento com uma classe como um todo,
enquanto os métodos que não são static são associados a uma instância de classe
56
https://www.devmedia.com.br/trabalhando-com-metodos-em-java/25917 4/19
24/11/2023, 01:26 Java Methods: Trabalhando com métodos em Java
específica (objeto) e podem manipular as variáveis de instância do objeto, como
pode ser visto nos exemplos de declarações de métodos.
Na Listagem 3 é usado o nome de classe e um ponto (.) que faz a invocação de um
método static da classe.
1 public class Teste_Metodo_Static {
2
3 public static void main(String[] args) {
4 double num1 = 8.5;
5 double pi = Math.PI;
6
7 System.out.println("Valor num1 = "+num1);
8 System.out.println("Valor PI = "+pi);
9
10 System.out.println("Soma dos valores = "+(num1+pi));
11
12 }
13
14 }
Listagem 3. Invocando métodos static
No exemplo da Listagem 4 não é instanciado nenhum objeto, apenas é chamada a
classe diretamente, invocando o método resultado que recebe dois argumentos do
tipo inteiro.
1 class Soma{
2
3 public static int resultado(int num1, int num2){
4 return (num1 + num2);
5 }
6 }
56
7
https://www.devmedia.com.br/trabalhando-com-metodos-em-java/25917 5/19
24/11/2023, 01:26 Java Methods: Trabalhando com métodos em Java
8 public class TestaSomaEstatica {
9
10 public static void main(String[] args) {
11
12 System.out.println(Soma.resultado(10,50));
13 }
14 }
Listagem 4. Exemplo chamada de método static
No exemplo da Listagem 3 a classe Math chama o atributo PI que tem as
seguintes características , public static final double PI, que contém o valor da
razão da circunferência de um círculo pelo seu diâmetro. Nesse caso não foi
definido valor, porque essa variável internamente já possui o valor estático.
Geralmente quando variáveis são definidas como final, possuem um valor que
não poderá ser alterado. Veja mais detalhes da classe Math na documentação do
Java Clicando Aqui.
Método main
Na execução de uma programa Java, a JVM (Java Virtual Machine) tenta chamar o
método main da classe que foi especificada. Quando declarado o método main
como static permite que a JVM invoque o main sem criar uma instância da classe,
ou seja, a classe é conhecida como classe principal ou classe testadora, que
efetuará os testes e chamadas das classes para a execuções dos programas.
A JVM carrega a classe especificada pelo nome da classe que utiliza para invocar o
método main (método principal/testador). Sempre que uma classe tiver esse
método, é especificado que uma lista de Strings como argumentos de linha de
comando, será passada para o aplicativo junto a JVM.
56
https://www.devmedia.com.br/trabalhando-com-metodos-em-java/25917 6/19
24/11/2023, 01:26 Java Methods: Trabalhando com métodos em Java
Figura 1. Explicação da classe main
Sobrecarga de método em Java
Em uma mesma classe pode haver vários métodos com o mesmo nome, contanto
que possuam listas de argumentos distintas. Os argumentos podem variar em
número, tipo e ordem de declaração.
class MetodoSobrecarregado{
public void testaMetodosSobrecarregados()
{
System.out.printf("Salário em número inteiro = %d\n", salari
System.out.printf("Salário em número double = %f\n", salario
}
public int salario(int valorInt)
{
System.out.printf("\n Salário com argumento de inteiro = %d\
return valorInt * valorInt;
}
public double salario( double valorDouble)
{
System.out.printf("\n Salário chamado com argumento de doubl
return valorDouble * valorDouble;
}
}
public class Test_Metodos_Sobrecarregados {
public static void main(String[] args) {
56
https://www.devmedia.com.br/trabalhando-com-metodos-em-java/25917 7/19
24/11/2023, 01:26 Java Methods: Trabalhando com métodos em Java
26 MetodoSobrecarregado testaM = new MetodoSobrecarregado();
27 testaM.testaMetodosSobrecarregados();
28 }
29 }
Listagem 5. Declaração método sobrecarregado
Na Listagem 5 foram declarados dois métodos. O primeiro retorna valores do tipo
int e outro que retorna valores do tipo double.
Esses métodos possuem nomes iguais, porém não são iguais, pois possuem certas
diferenças como: tipo de dados, retorno e parâmetros.
O compilador do Java descobre quando são métodos sobrecarregados,
distinguindo pelas suas assinaturas, que é uma combinação do nome do método,
tipos e ordem dos seus parâmetros.
Características dos métodos sobrecarregados
A ordem dos tipos de parâmetros é importante;
As chamadas de método não podem ser distinguidas por tipo de retorno;
Podem ter diferentes tipos de retorno se os métodos tiverem diferentes listas
de parâmetro;
Se diferenciam pela sua assinatura, que é uma combinação do nome do
método, tipos e ordem dos seus parâmetros.
Métodos sem retorno em Java
Esse tipo de método executa apenas o código que tem dentro dele, não
retornando nenhum resultado, sendo identificados com a palavra-chave void.
56
https://www.devmedia.com.br/trabalhando-com-metodos-em-java/25917 8/19
24/11/2023, 01:26 Java Methods: Trabalhando com métodos em Java
1 class Metodo2{
2 public void escrever()
3 {
4 System.out.println("Método sem Retorno - VOID ");
5 }
6 }
7
8 public class Metodos_Sem_Retorno {
9
10 public static void main(String[] args) {
11
12 Metodo2 m = new Metodo2();
13 m.escrever();
14 }
15 }
Listagem 6. Exemplo método void
Métodos com retorno em Java
Esses métodos que não possuem a palavra-chave void incorporada na declaração,
mas sim um tipo de dados, apresentam em seu corpo a palavra reservada return,
que informa que o método terá que retornar o mesmo tipo de dados com o qual
foi declarado.
1 class Metodo3{
2
3 String nome = "João Silva";
4
5 public String retornaNome()
6 {
7 return nome;
8 }
9 }
10 56
11 public class Metodo_Com_Retorno {
https://www.devmedia.com.br/trabalhando-com-metodos-em-java/25917 9/19
24/11/2023, 01:26 Java Methods: Trabalhando com métodos em Java
12
13 public static void main(String[] args) {
14
15 Metodo3 m3 = new Metodo3();
16 System.out.println(m3.retornaNome());
17
18 }
19
20 }
Listagem 7. Exemplo de método que retorna uma String
1 class ValoresInt
2 {
3 public int calculadora()
4 {
5 int a = 10;
6 int b = 20;
7 int c = a + b;
8
9 return c;
10 }
11 }
12
13 public class Metodo_Com_Retorno_Inteiro {
14
15 public static void main(String[] args) {
16
17 ValoresInt valores = new ValoresInt();
18
19 System.out.print(valores.calculadora());
20 }
21 }
Listagem 8. Exemplo de método que retorna um inteiro
Com isso finalizamos este artigo cujo objetivo foi apresentar, de forma básica, a
utilização de métodos na linguagem Java. Foi explicado é feita a declaração dos
vários tipos de métodos e como invocá-los posteriormente. 56
https://www.devmedia.com.br/trabalhando-com-metodos-em-java/25917 10/19
24/11/2023, 01:26 Java Methods: Trabalhando com métodos em Java
Espero que tenham gostado e até a próxima.
Saiba mais: Os primeiros passos em Java através - Guia Completo de Java
Links Úteis
Lógica de Programação: Neste curso veremos uma introdução a algoritmos,
utilizando como linguagem de apoio o Portugol.
Cursos de Engenharia de Software: Torne-se um programador, analista ou
gerente de projetos com grandes habilidades de engenharia de software.
Conheça metodologias e ferramentas como Scrum, XP, PMBOK, UML e
muito mais.
Cursos de Banco de Dados: Aprenda a modelar, implementar e administrar
bancos de dados usando as ferramentas mais solicitadas do mercado.
Domine a linguagem SQL e os principais SGBDs: SQL Server, Oracle, MySQL
e outros.
Saiba mais sobre Java ;)
O Que é JPA?: Dominar a persistência de dados é uma necessidade
indispensável aos programadores. Sem esse conhecimento nossas aplicações
não terão a capacidade de armazenar e recuperar os dados por ela
manipulados.
Preparando o ambiente para programar em Java: Neste curso você aprenderá a
preparar seu ambiente para programar em Java. Veremos aqui o que é
necessário instalar e como proceder para desenvolver aplicações com essa
linguagem.
56
https://www.devmedia.com.br/trabalhando-com-metodos-em-java/25917 11/19
24/11/2023, 01:26 Java Methods: Trabalhando com métodos em Java
Criando meu primeiro projeto no Java: Neste curso você aprenderá a criar o seu
primeiro programa com Java, e não, ele não será um simples “Hello, World!”.
:) Para isso, vamos começar ensinando como instalar o Java e preparar o
ambiente de desenvolvimento.
Tecnologias:
Java POO
Anotar Marcar como concluído
Confira outros conteúdos:
Novidades do Java Teste unitário com JUnit
56
https://www.devmedia.com.br/trabalhando-com-metodos-em-java/25917 12/19
24/11/2023, 01:26 Java Methods: Trabalhando com métodos em Java
Em caso de dúvidas chame no whatsapp
ÚLTIMA SEMANA!
Plano Recorrente
BLACK FRIDAY
R$89,90 /MÊS
PRIMEIROS
3 MESES
Plano Anual
R$ 49,90 A PARTIR
/MÊS DO 4° MÊS
12x R$ 45,00 12 MESES = R$ 718,80
R$ 178 de desconto
Formação FullStack completa
12 MESES = R$ 540,00
+10mil exercícios gamificados
+50 projetos reais
Formação FullStack completa
Suporte online
+10mil exercícios gamificados
Pra quem tem pouco limite no
+50 projetos reais
cartão
Suporte online Fidelidade de 12 meses
Matricule-se
APROVEITE
56
https://www.devmedia.com.br/trabalhando-com-metodos-em-java/25917 13/19
24/11/2023, 01:26 Java Methods: Trabalhando com métodos em Java
Perguntas Frequentes
Quem somos?
Por que a programação se tornou a profissão mais promissora da
atualidade?
Como faço para começar a estudar?
Em quanto tempo de estudo vou me tornar um programador?
Sim, você pode se tornar um programador e não precisa ter
diploma de curso superior!
O que eu irei aprender estudando pela DevMedia?
Principais diferenciais da DevMedia
Qual o investimento financeiro que preciso fazer para me tornar
um programador?
Como funciona a forma de pagamento da DevMedia?
Nossos casos de sucesso 56
https://www.devmedia.com.br/trabalhando-com-metodos-em-java/25917 14/19
24/11/2023, 01:26 Java Methods: Trabalhando com métodos em Java
Leonardo Carlos
Eu sabia pouquíssimas coisas de programação antes de começar a estudar
com vocês, fui me especializando em várias áreas e ferramentas que tinham
na plataforma, e com essa bagagem consegui um estágio logo no início do
meu primeiro período na faculdade.
Lucas Rodrigues
Estudo aqui na Dev desde o meio do ano passado! Nesse período a Dev me
ajudou a crescer muito aqui no trampo.
Fui o primeiro desenvolvedor contratado pela minha empresa. Hoje eu
lidero um time de desenvolvimento!
Minha meta é continuar estudando e praticando para ser um Full-Stack Dev!
Heráclito Júnior
Economizei 3 meses para assinar a plataforma e sendo sincero valeu muito a
pena, pois a plataforma é bem intuitiva e muuuuito didática a metodologia
de ensino. Sinto que estou EVOLUINDO a cada dia. Muito obrigado!
Julio Cablen
Nossa! Plataforma maravilhosa. To amando o curso de desenvolvimento
front-end, tinha coisas que eu ainda não tinha visto. A didática é do jeito
que qualquer pessoa consegue aprender. Sério, to apaixonado, adorando
demais.
Joelberth Sena
Adquiri o curso de vocês e logo percebi que são os melhores do Brasil. É um
passo a passo incrível. Só não aprende quem não quer. Foi o melhor
investimento da minha vida!
56
Felipe Nunes
https://www.devmedia.com.br/trabalhando-com-metodos-em-java/25917 15/19
24/11/2023, 01:26 Java Methods: Trabalhando com métodos em Java
Foi um dos melhores investimentos que já fiz na vida e tenho aprendido
bastante com a plataforma. Vocês estão fazendo parte da minha jornada
nesse mundo da programação, irei assinar meu contrato como
programador graças a plataforma.
Wanderson Oliveira
Comprei a assinatura tem uma semana, aprendi mais do que 4 meses
estudando outros cursos. Exercícios práticos que não tem como não
aprender, estão de parabéns!
José Lucas
Obrigado DevMedia, nunca presenciei uma plataforma de ensino tão
presente na vida acadêmica de seus alunos, parabéns!
Eduardo Dorneles
Aprendi React na plataforma da DevMedia há cerca de 1 ano e meio... Hoje
estou há 1 ano empregado trabalhando 100% com React!
Adauto Junior
Já fiz alguns cursos na área e nenhum é tão bom quanto o de vocês. Estou
aprendendo muito, muito obrigado por existirem. Estão de parabéns...
Espero um dia conseguir um emprego na área.
Ver todos os casos de sucesso
56
https://www.devmedia.com.br/trabalhando-com-metodos-em-java/25917 16/19
24/11/2023, 01:26 Java Methods: Trabalhando com métodos em Java
Por Thiago
Em 2012
COMENTÁRIOS
Michelle Santos
Nível 3
Eu ainda não entendi a diferença entre Métodos com retorno,e Métodos
sem retorno?
como eu consigo identificar em um problema quando ou não usa-los, e
como identificar qual deles usar?
há +1 ano
Ver comentários anteriores (2)
Daniella Gomes
DevMedia
A gente que agradece Michelle.
Sempre que precisar é só comentar ;)
há +1 ano
Osvaldino Neto
Nível
Ótimo artigo!
Bem explicado...
há +1 ano
56
https://www.devmedia.com.br/trabalhando-com-metodos-em-java/25917 17/19
24/11/2023, 01:26 Java Methods: Trabalhando com métodos em Java
Douglas
Nível 0
Olá Osvaldino, tudo bem?
Agradecemos pelo comentário e elogio!
Qualquer dúvida estamos à disposição.
Um abraço.
há +1 ano
Fabio Rocha
Nível 0
Parabéns, bom artigo para quem esta iniciando...
há +1 ano
Matheus Javornik
Nível
Muito útil, realmente pra quem ta iniciando como eu ajuda bastante!
Obrigado!
há +1 ano
56
https://www.devmedia.com.br/trabalhando-com-metodos-em-java/25917 18/19
24/11/2023, 01:26 Java Methods: Trabalhando com métodos em Java
Menu
Assine agora Hospedagem web por Porta 80 Web Hosting.
Quem Somos
Fale conosco
Plano para Instituição de ensino
Assinatura para empresas
Tecnologia:
HTML - CSS - Algoritmo - Javascript - React - React Native - Node.js - SQL - MySQL - UML - Scrum -
Levantamento de Requisitos - Padrão de Projeto - Teste de Software
Cursos:
HTML e CSS - Javascript - Programação para Iniciantes - Angular - React - Vue.js - Node.js - Spring - .NET
Core - Mobile - React Native - Android - Flutter - Algoritmo - Automação - Delphi - Java - PHP - Python -
SQL e Banco de Dados - Engenharia de Software - Canal Mais - Gratuitos
Artigos:
Front-End - Javascript - Iniciantes - Angular - Dart - Engenharia - Mobile - Node.js - Python - React
Native - Vue.js - Android - Banco de Dados - Delphi - Flutter - Java - Kotlin - .Net - PHP - React - Spring -
Gratuitos
DevCast:
HTML e CSS - Javascript - Angular - Engenharia - Mobile - Node.js - Python - React Native - Android -
Banco de Dados - Delphi - Flutter - Java - Automação - .Net - PHP - React - Spring - Gratuitos - Canal
Mais
Guia:
Fundamentos - .NET - PHP - Python - Java - Delphi - HTML e CSS - JavaScript - Node - React Native -
Flutter - Banco de Dados - Mobile - Spring - Arquitetura - Automação - Engenharia - + Assuntos
56
https://www.devmedia.com.br/trabalhando-com-metodos-em-java/25917 19/19