top of page
Buscar

O que são métodos na programação orientada a objetos? Com exemplos em Java e Python.

Métodos são uma parte fundamental da programação orientada a objetos. É por meio deles que alteramos e consultamos atributos dos nossos objetos. Sendo assim, é fundamental entender o conceito e claro, saber como implementar métodos. No post de hoje além de abordar a parte conceitual, também vou apresentar exemplos de métodos simples em Java e em Python, lembrando que isso é possível em qualquer linguagem que forneça suporte a POO.



O que são métodos?


Como falado brevemente na introdução do post, métodos são o meio que utilizamos para ler, modificar e definir os atributos de um objeto. Estão sempre associados a uma classe e, desta forma, podem ter seu escopo definido para poderem ser acessíveis a diferentes níveis: podemos definir métodos que somente podem ser acessados internamente naquela classe, métodos que não podem ser acessados diretamente e métodos que podem ser acessados de qualquer parte do nosso projeto.


Motivos para se utilizar métodos:


Utilizamos os métodos para fazer esses acessos aos objetos por questões de segurança e integridade do objeto em si e da aplicação como um todo, temos que pensar que em uma aplicação completa, os dados dos objetos são armazenados em um banco de dados, não é interessante (não é uma boa prática) a gente permitir o acesso direto a essas informações, nem mesmo que seja apenas para consulta.


Quais os métodos mais utilizados?


Os métodos mais utilizados, que inclusive geraram em diversas IDEs soluções prontas para a criação deles são os métodos conhecidos como "Getters and Setters", basicamente são os métodos utilizados para se obter a informação sobre algum atributo do objeto (getters) e definir o valor de algum atributo do objeto (setters).


Agora para por o conhecimento em prática, nada melhor do que criar alguns métodos:


Definindo getters e setters em Java:



public class ClasseExemplo {
	
	public String getNome() {
		return nome;
	}

	public void setNome(String nome) {
		this.nome = nome;
	}

	public int getIdade() {
		return idade;
	}

	public void setIdade(int idade) {
		this.idade = idade;
	}

	String nome = "Acadêmico Tech";
		
	int idade = 20;	
}
	

Neste trecho de código definimos uma classe com nome "ClasseExemplo" com dois atributos: nome e idade. Além disso, definimos os métodos getters e setters dessa classe, deste modo , agora é possível definir e consultar os valores da classe sem interagir diretamente com o objeto, mas sim com os métodos.



Definindo getters e setters em Python:



class Classe Exemplo:

    def __init__(self, nome, idade):
        self._nome = nome
        self._idade = idade

    @nome.getter
    def nome(self):
        return self.nome

    @nome.setter
    def nome(self, novo_nome):
        self._nome = novo_nome
        
    @idade.getter
    def idade(self):
        return self.idade

    @idade.setter
    def idade(self, nova_idade):
        self._idade = nova_idade
    

No trecho de código acima temos a mesma estrutura que montamos em Java, sendo aplicada em Python. Uma classe com nome "ClasseExemplo" com dois atributos: nome e idade. Além disso, definimos os métodos getters e setters dessa classe.

Como está o seu currículo?

Ter um bom currículo é uma fator chave para você ter seu trabalho reconhecido perante o mercado de trabalho.

 

Sabemos que elaborar um bom currículo que descreva bem suas habilidade e suas expectativas pode ser uma tarefa muito complicada.

Clique no botão abaixo para ter todo o suporte necessário na elaboração de um currículo nota 10.

Como está o seu currículo?

Ter um bom currículo é uma fator chave para você ter seu trabalho reconhecido perante o mercado de trabalho.

 

Sabemos que elaborar um bom currículo que descreva bem suas habilidade e suas expectativas pode ser uma tarefa muito complicada.

Clique no botão abaixo para ter todo o suporte necessário na elaboração de um currículo nota 10.

Sobre o Autor

"Olá meu nome é Tiago Stasaitis, sou formado

Técnico em Informática e bacharel em Sistemas de Informação.

   

Fundei o Acadêmico Tech no intuito de compartilhar conteúdo que pode ajudar pessoas a se desenvolverem pessoal e profissionalmente. "

1633903387510.jpg
  • LinkedIn - Black Circle
  • Instagram
bottom of page