Precisa de um freelancer, códigos-fonte e exemplos completos?
Bem-vindo(a) ao meu site. Além de realizar alguns serviços como freelancer eu tenho alguns códigos-fonte e exemplos completos de Java, Delphi, PHP, Python, C/C++, Hibernate, JPA, Spring, JSP, Servlets, Ruby, Ruby On Rails e muitas outras linguagens e frameworks. Veja como falar comigo clicando aqui.
 
Arquivo de Códigos - Página Inicial
Códigos-fonte
» Códigos-fonte e exemplos completos
Linguagens
» ActionScript
» Adobe AIR
» Adobe Flex
» AJAX
» C
» C#
» C++
» CSS
» Delphi
» DHTML - Dynamic HTML
» HTML/XHTML
» Java
» JavaFX
» JavaScript
» Java Servlets
» JSP - Java Server Pages
» Perl
» PHP
» PHP-GTK
» Python
» Ruby
» Tcl/Tk
» VB.NET
Bancos de Dados
» IBM DB2
» MySQL
Frameworks
» CodeIgniter
» jQuery
» JSF - Java Server Faces
» Qt
» Ruby On Rails
» Struts
» Struts 2
» wxWidgets
» Zend Framework
Container/Servidor
» Apache Tomcat
» Apache Web Server
Ferramentas
» Apache Ant
» iTextSharp (iText#)
Referências
» CSS1 e CSS2
» JavaScript
Serviços On-Line
» Qual é meu IP?
» Tabela Cores HTML I
» Tabela Cores HTML II
» Lista de Mime Types
» Códigos Teclas Virtuais
Usuários On-Line
Visitantes: 44
PHP
O que há de novo no PHP 5?
40 dicas e truques sobre como trabalhar com datas e horas em PHP
60 dicas e truques sobre como trabalhar com strings e caracteres em PHP
PHP e a Orientação a Objetos - POO (Curso Completo)

DHTML
Curso completo de DHTML para iniciantes

CSS
Como definir uma imagem de fundo fixa na página
Definindo uma imagem de fundo para botões HTML
Você está aqui: Inicio -> Tutoriais -> PHP - Usando propriedades estáticas
Usando propriedades estáticas
Quando declaramos propriedades em uma classe, cada instância desta classe terá suas próprias versões destas propriedades.

Existe, contudo, uma forma de fazer com que uma determinada propriedade pertença à classe e não aos objetos instanciados a partir dela. Veja um exemplo curioso.



Suponha que você esteja desenvolvendo um jogo que contenha vários objetos da classe Marciano. Ora, não seria interessante que cada objeto soubesse quantos colegas seus existem no momento? Isso os faria mais ou menos corajosos.

A palavra-chave static é usada para marcar uma propriedade pertecendo à classe e não às suas instâncias. Veja um exemplo:

<?
// definição da classe Pessoa
class Pessoa{
  static $quant = 0;

  function __construct(){
    self::$quant++;
  }

  function __destruct(){
    self::$quant--;
  }
}

// cria quatro instâncias da classe
for($i = 0; $i < 4; $i++)
  $cliente[$i] = new Pessoa();

// obtém o valor da propriedade $quant;
echo 'O valor de $quant é: ' . Pessoa::$quant;

// exclui um dos objetos
unset($cliente[0]);

// obtém o valor da propriedade $quant novamente;
echo '<br>O valor de $quant agora é: ' . Pessoa::$quant;
?>


Na linha:

static $quant = 0;

definimos uma variável estática chamada $quant e definimos seu valor como 0. Em seguida usamos o construtor e destrutor da classe para incrementar ou decrementar o valor da variável. Veja que temos que usar a palavra self acompanhada de :: para ter acesso a uma propriedade estática dentro do corpo da classe:

self::$quant++;

Fora do corpo da classe nós usamos o nome da classe e :: como mostrado abaixo:

// obtém o valor da propriedade $quant;
echo 'O valor de $quant é: ' . Pessoa::$quant;


1 - PHP e a programação orientada a objetos
2 - Entendendo classes e objetos
3 - Criando sua primeira classe em PHP
4 - Controlando a visibilidade de propriedades e métodos de uma classe
5 - Usando construtores e destrutores
6 - Fornecendo parâmetros de inicialização às suas classes
7 - Usando propriedades estáticas
8 - Usando métodos estáticos
9 - Como usar constantes como membros de classes
10 - Atribuição de objetos de uma mesma classe
11 - Aprenda a clonar objetos de uma mesma classe
12 - Herança
13 - Herança, construtores e a palavra-chave parent
 
 
Arquivo de Códigos - Página Inicial
Veja dicas, truques e anotações de C# (CSharp)
Como excluir (deletar) um diretório usando C#
Obter o dia da semana em formato string
Como inverter a ordem dos elementos de um array
A instrução switch da linguagem C#
Como remover todos os espaços de uma string
Usando a API do Windows para fazer com que um TextBox de múltiplas linhas role para o topo (parte superior)
Entenda a classe DirectoryInfo
Como obter a diferença de anos, meses ou dias entre duas datas
Como obter a quantidade de caracteres (tamanho de) em uma string
Como adicionar ou subtrair meses de uma data usando C#
Veja dicas, truques e anotações de outras linguagens
Java - Como evitar ou corrigir uma exceção NullPointerException
VB.NET - Pesquisando o retornando o índice de um item na ListBox
Ruby - Adicionando itens ao final de um array usando o operador <<
JavaScript - Obter a propriedade type dos elementos de um formulário
Java - Como fornecer uma classe que implementa a interface ComboBoxModel para um dos construtores JComboBox
PHP - Como verificar se a PDO está habilitada em minha instalação do PHP?
VB.NET - Programação orientada a objetos (OOP) em VB.NET: Classes, objetos, métodos e variáveis de instância
Java - Entendendo a classe Date
C++ - Entendendo a macro EXIT_SUCCESS
VB.NET - Como minimizar um formulário ao clicar em um botão

       

http://www.arquivodecodigos.net
:: Arquivo de Códigos - Softwares e Consultoria em Programação ::
Todo o conteúdo deste site, quando não devidamente observado, pertence a seus idealizadores e não
poderá ser usado para outras finalidades senão estudo e aprimoramento de técnicas de programação.
Certifique-se de ler as notas legais antes de proceder com o acesso e leitura do
conteúdo disponibilizado nestas páginas.

Fale Conosco: (62) 3261-7018 / (62) 8185-0734

Desenvolvedor Responsável: Osmar J. Silva

Página Inicial Contatos Pesquisar Mapa do Site