Orientação a Objetos

01/06/2008

1

Ola,

vi o seguinte codigo em Java:

public class Fotografia {
public BufferedImage imagem;

public Foto() {
this.imagem=null;
}
public Foto(BufferedImage bi) {
this.imagem=bi;
}
public Foto(String filepath) throws IOException {
this.loadImagem(filepath);
}
...

Não tenho muita pratica em OO, mas fiquei curioso como ficaria este código em Delphi.

É possível ? Alguem sabe como reescrever isso em Delphi ?

Grato;
Cristiano M.


Responder

Posts

01/06/2008

Cristiano070

Ficou assim...

TPhoto = class

public

procedure Foto(); overload;
procedure Foto(const bi: BufferedImage); overload;
procedure Foto(filepath: string); overload;

sds.;


Responder
type
  // definição da classe
  TFotografia = class
  private
    FImagem: TImage;
  public
    procedure Foto; overload;
    procedure Foto(BI: TImage); overload;
    procedure Foto(FilePath: string); overload;
  published
    property Imagem: TImage read FImagem;
  end;

{ TFotografia }
// implementação dos métodos da classe
procedure TFotografia.Foto;
begin
  FImagem := nil;
end;

procedure TFotografia.Foto(BI: TImage);
begin
  FImagem := BI;
end;

procedure TFotografia.Foto(FilePath: string);
begin
  if not Assigned(FImagem) then
    raise Exception.Create(´Não há uma imagem associada à propriedade Imagem´)
  else
    FImagem.Picture.LoadFromFile(FilePath);
end;



Responder