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]

public class Exemplo 
 { 
 
   //declaração da instância [[variable (computer science)|variable]](s).
   protected int data;
 
   //definição do '''construtor'''. 
   public Exemplo()
   {
      data = 1;
   }
 }

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