[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
RE: [aspectj-users] One target for intertype declarations
|
I'll dig up a canonical example from my Java Cert book when I get a sec...
Nick
--- Eric Bodden <eric@xxxxxxxxx> wrote:
>
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Nicholas Lesiecki wrote:
> >> Whoops, sorry, missed the modifier. Of course you are right. I
> >> also consider that as a possible place for improvement.
> >
> > Actually, there would be two copies of the field even if the
> > modifier were "public". Variables, unlike methods, are not
> > overridden. They can be shadowed, but you can still access both
> > copies on a given
> > object.
>
> Interesting. That's really new to me. I always thought inheritance
> would work the normal way for fields as well. So how would one access
> a field that is declared in a superclass when you have the very same
> declaration in the subclass as well (a shadow)? By a cast?
>
> class Super { public Type field; }
> class Sub extends super { public Type field; }
>
> class Foo {
> void someMethod {
> Super s = new Sub();
> //is s.field here the field of Sub or Super?
> Sub sub = (Sub) s;
> //is s.field here the field of Sub or Super?
> }
> }
>
> Now *I* am confused ;-)
> Eric
>
> - --
> Eric Bodden
> Chair I2 for Programming Languages and Program Analysis
> RWTH Aachen University
>
> -----BEGIN PGP SIGNATURE-----
> Version: PGP 8.0.3
>
> iQA/AwUBQaQxZswiFCm7RlWCEQJCQgCeP6BpBQucceA4Q0w3ztf4RfzzFhQAnRTI
> dYZmicZ8dhZuyLroWLGUWETV
> =uEXG
> -----END PGP SIGNATURE-----
>
>
> _______________________________________________
> aspectj-users mailing list
> aspectj-users@xxxxxxxxxxx
> http://dev.eclipse.org/mailman/listinfo/aspectj-users
>