Como faço para criar uma classe em Delphi?
12/03/2003
0
Em Java, eu crio classes, colocando métodos e propriedades. Eu gostaria de saber se em Delphi eu também posso criar classes que podem ser instanciadas pelos meus projetos e utilizar seus métodos e propiedades. Sendo que esta classe não seria um componente a ser incluído no meu Form e sim uma classe não visual somente com atributos e métodos para eu utilizar. Por exemplo, eu gostaria de criar uma classe Carro em que eu pudesse guardar o nome do carro e o ano de fabricação (propriedades) e inserir num banco de dados com o método AddCarro.
Anonymous
Curtir tópico
+ 0
Responder
Posts
13/03/2003
Anonymous
pode sim, veja so esse exemplo:
isso é uma unit que tem a classe TCarro dentro ...
unit U_carro;
interface
uses Windows,Messages,Classes,SysUtils;
type
TCarro = class()
private
placa: string;
ano: integer;
public
constructor Create(placa: string; ano: integer);
function getPlaca(): string;
function getAno(): integer;
procedure Add();
end;
implementation
constructor TCarro.Create(placa1: string; ano1: integer);
begin
palca := placa1;
ano := ano1;
end;
function TCarro.getPlaca(): string;
begin
getPlaca := placa;
end;
function TCarro.getAno(): integer;
begin
getAno := ano;
end;
Procedure TCarro.Add();
var query: TQuery; // essa variavel vai ser destruida no fim deste
// procedimento
begin
query := TQuery.Create(nil);
query.close;
query.sql.clear;
query.sql.add(´insert into tabela (ano,placa) values (:ano,:placa);
query.parambyname(´ano´) := getAno();
query.parambyname(´placa´) := getPlaca();
query.execute;
end;
end.
para usar vc declara a unidade e depois cria o objeto
exe:
var
carros array[0..5] of TCarro;
begin
for i := 0 to length(carros) do
carros[i].Create(´aaa1234´,2003);
end.
isso é uma unit que tem a classe TCarro dentro ...
unit U_carro;
interface
uses Windows,Messages,Classes,SysUtils;
type
TCarro = class()
private
placa: string;
ano: integer;
public
constructor Create(placa: string; ano: integer);
function getPlaca(): string;
function getAno(): integer;
procedure Add();
end;
implementation
constructor TCarro.Create(placa1: string; ano1: integer);
begin
palca := placa1;
ano := ano1;
end;
function TCarro.getPlaca(): string;
begin
getPlaca := placa;
end;
function TCarro.getAno(): integer;
begin
getAno := ano;
end;
Procedure TCarro.Add();
var query: TQuery; // essa variavel vai ser destruida no fim deste
// procedimento
begin
query := TQuery.Create(nil);
query.close;
query.sql.clear;
query.sql.add(´insert into tabela (ano,placa) values (:ano,:placa);
query.parambyname(´ano´) := getAno();
query.parambyname(´placa´) := getPlaca();
query.execute;
end;
end.
para usar vc declara a unidade e depois cria o objeto
exe:
var
carros array[0..5] of TCarro;
begin
for i := 0 to length(carros) do
carros[i].Create(´aaa1234´,2003);
end.
Responder
Clique aqui para fazer login e interagir na Comunidade :)