[Gambas-user] Idea for 3.17
Christof Thalhofer
chrisml at deganius.de
Mon May 10 00:05:40 CEST 2021
Am 09.05.21 um 22:50 schrieb Dimitris Anogiatis:
> So if I understand the concept of namespaces, we're talking about
> merging code from 2 or more classes inheriting and overriding methods
> and properties of those classes.
No, no, no. This happens only *without namespaces*. What you describe is
the standard behaviour of Gambas:
The first class 'Mail' is loaded. The second class 'Mail' which is
loaded afterwards overwrites/inherits the first one.
Sometimes this is a very nice feature. But it is deadly if you want to
use a library with code which was written by someone else which you can
download from Gitlab and integrate in your program.
Because if you load such a library classes with the same names ('Mail'
in the library and 'Mail in your program') will inherit/overwrite each
other and this will crash your program with high probability!
This happens with the current Gambas we all work with.
> How would the inheritance mechanism work? For example let's say we have
> the mail class and we import my class and yours like this (again if I
> understand it correctly... if not please correct me):
>
> import christof:Mail
> import dimitris:Mail
You can use them independently of each other. There is *no inheritance*.
It is the great advantage of namespaces, again:
*No inheritance*
(To be precise: No automatic inheritance.)
If it helps you then you can see it as if you would call the classes:
'ChristofMail'
'DimitrisMail'
Alles Gute
Christof Thalhofer
--
Dies ist keine Signatur
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <http://lists.gambas-basic.org/pipermail/user/attachments/20210510/3b411f06/attachment.sig>
More information about the User
mailing list