![]() |
clase estatica D7
Hola
se pude definir una clase estática en D7? gracias |
Que yo sepa, no.
De todas formas puedes usar una unidad Pascal como "pseudo-objeto". Yo lo hago muchas veces. El compilador Pascal crea automáticamente "nombres de espacio" por cada unidad Pascal, de forma que pueden utilizarse para identificar objetos. Por ejemplo:
|
Cita:
Y sí, delphi cuenta con los llamados métodos de clase que son sinónimos de los estáticos. // Saludos |
A partir de una version superior de Delphi 7 (Delphi 2007 por ejmplo)sí se puede, pero de Delphi 7 para abajo no se puede...;)
En Delphi 2007 se puede hacer así: Si intentamos crear una nueva clase descendiente de TEntidad El compilador gritará un error...;) Saludos...:) |
No es lo mismo sealed que static.
// Saludos |
Cita:
No recuerdo si existe, formalmente el concepto Clase estática, pero si métodos estáticos o métodos de clases. Ahora me pregunto, El que una clase tenga métodos de clase es suficiente criterio como para concluir que la clase es estática. A lo que voy: Si hay métodos estáticos, ergo: la clase es estática. Me voy a los libros... porque ya estoy dudando. :eek: :o Saludos, |
Cita:
Cita:
---------------------------- (*) Al parecer, C# sí implementa explícitamente las clases estáticas. // Saludos |
Pues, creeme roman si lo que he dicho no iba en plan de humor... es una DUDA REAL que me asalta ahora :eek: ¿Siendo correctos, en la teoría OO, existe el concepto de clase estática? :confused: No apunto a si un lenguaje tiene o no soporte a eso... ¿Está el concepto en la teoría?
Sorprendentemente intento recordar la teoría... pero es como si esa zona en mi cabeza justo estuviera dañada. Recuerdo clases abstractas, virtuales, métodos estáticos, sobrecargados, etc. Pero en si... el concepto clase estática es como si no estuviera en mi cabeza :eek: Me hace falta algo para la memoria :o Saludos, |
Cita:
Cita:
Saludos...:) |
Cita:
Cita:
Todo lo demás es accesorio. Además, las "clases estáticas" sólo pueden ser aplicadas a lenguajes orientados a clases ;). Hay lenguajes orientados a objetos que no tienen clases, como Small-Talk (el "Lenguaje Original"). |
Off topic
Fuera de tema:
Los creadores de lenguajes no sólo evitan suprimir la más perniciosa que provechosa sección privada de las clases, sino que encima se dan el lujo de inventar el concepto de clase sellada. ¿Qué sigue? ¿Clases de pago por evento? ¿Canon por redefinir métodos virtuales? ¡Pabernoslimitao! :D Cierro este off topic de desahogo teórico-filosófico. :o |
A ver si aclaro...
Una "clase estática" es una clase que no tiene instancia... O mejor dicho, una clase que tiene una sola instancia que se crea automágicamente. Por ejemplo en Java (de donde, se me ocurre, viene el término) uno puede hacer Numero= Math.Random() y obtener un número aleatorio entre 0 y 1 *SIN* tener que instanciar Math. ¿Adivinen qué es Math? Sí, una clase estática. En otras palabras, en un lenguaje que sólo soporta programación OO, en algún momento se va a necesitar llamar a una función... El problema es que las funciones no existen en OO, solamente métodos adentro de clases. Es decir que sin instanciar una clase, no hay método. De ahí la clase estática. En Delphi llamás a random y listo, feliz de la vida... pero Java es otro cantar. ;) En este sentido, creo que en las versiones modernas de Delphi existe el modificador static, pero no podría asegurarlo, pero en D7 seguro que no. |
Cita:
Cita:
Son estáticos en tanto que no requieren una instancia particular de la clase. Estos métodos existen también en delphi 7 y versiones anteriores. Por otra parte, una misma clase puede tener métodos estáticos y métodos no estáticos. // Saludos |
Hola.
Tengo una duda en cuanto a las definiciónes de método estático y método de clase, que a fines prácticos, quizá no tenga mayor importancia. Pero la comento a ver si me la pueden aclarar. Un artículo de Ian Marteens que leí hace un tiempo en una parte dice: Cita:
Cita:
Un saludo. |
La franja horaria es GMT +2. Ahora son las 10:24:22. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi