Difference between revisions of "CSharp: AulaDemoDll.NamespaceC.Produto"

From AdonaiMedrado.Pro.Br
Jump to: navigation, search
(New page: <code lang="csharp"> using System; namespace AulaDemoDll.NamespaceC { public delegate void TratarEstoqueZero(Produto p); public class Produto { private int pEstoque; ...)
 
 
Line 4: Line 4:
 
namespace AulaDemoDll.NamespaceC
 
namespace AulaDemoDll.NamespaceC
 
{
 
{
    public delegate void TratarEstoqueZero(Produto p);
 
 
 
     public class Produto
 
     public class Produto
 
     {
 
     {

Latest revision as of 12:20, 11 November 2008

using System;
 
namespace AulaDemoDll.NamespaceC
{
    public class Produto
    {
        private int pEstoque;
        public int Estoque
        {
            get
            {
                return pEstoque;
            }
            set
            {
                pEstoque = value;
                if (pEstoque <= 0 && TratarEstoqueZero != null)
                    TratarEstoqueZero(this);
            }
        }
 
        private TratarEstoqueZero pTratarEstoqueZero;
        public TratarEstoqueZero TratarEstoqueZero
        {
            get
            {
                return pTratarEstoqueZero;
            }
            set
            {
                pTratarEstoqueZero = value;
            }
        }
 
        public void Vender()
        {
            Estoque--;
        }
        public void Vender(int quantidade)
        {
            Estoque -= quantidade;
        }
 
        public Produto(int estoque, TratarEstoqueZero tratarEstoqueZero)
        {
            this.Estoque = estoque;
            this.TratarEstoqueZero = tratarEstoqueZero;
        }
    }
}