Construtor

Origem: Wikipédia, a enciclopédia livre.
Ir para: navegação, pesquisa

Construtor em linguagens de programação orientadas a objeto é um método chamado assim que uma nova instância do objeto for criada. Tal método geralmente é responsável pela alocação de recursos necessários ao funcionamento do objeto além da definição inicial das variáveis de estado (atributos).

Exemplos[editar | editar código-fonte]

C++[editar | editar código-fonte]

class Ponto
{
public:
      // Constructor
      Ponto()
      : x ( 0 )
      : y ( 0 )
      {
      }
      float x; // ponto no eixo das abscissas
      float y; // ponto no eixo das ordenadas 
};

Python[editar | editar código-fonte]

class Ponto:
   ponto1, ponto2, nome = None, None, None

   def __init__(self, nome):
     # referências do construtor
     self.ponto1 = None
     self.ponto2 = None
     self.nome = nome

Java[editar | editar código-fonte]

  1. public class MinhaClasse {  
  2. public MinhaClasse() { //esse é o metodo construtor  
  3. System.out.println("Oi!");  
  4. }  
  5. }

Delphi[editar | editar código-fonte]


interface

type
  Exemplo = class

private
  //declaração da campos.
  FX: Integer;
  FY: Integer;

public
  //declaração do construtor. 
  constructor Create;

end;

implementation

//definição do construtor. 
constructor Exemplo.Create;
begin
  FX := 0;
  FY := 0;
end;

end.

Visual Basic[editar | editar código-fonte]

Public Class Exemplo
    'Declaração de variável de instância
    Private variavel As Single

    'construtor padrão da classe
    Public Sub New()
        variavel = 0
    End Sub

    'sobrecarga do contrutor com um argumento
    Public Sub New(ByVal variavel As Single)
        Me.variavel = variavel
    End Sub
End Class

PHP[editar | editar código-fonte]

  public function __construct($Filtro = '', $Paginar = false, $Ordem = 'id_tabela') { // Exemplo de parametros
    $this->funcoes =& $GLOBALS['arquivo'];
    $this->bancoDeDados =& $GLOBALS['arquivo'];

    if (!empty($Filtro)) {
      return $this->consultar($Filtro, $Paginar, $Ordem);//consultar é um metodo da classe
    }   
  }