VK
Size: a a a
VK
c
IK
AT
f
AT
c
IK
MM
AT
c
VK
AT
f
f
c
x в месте g.print() определить смещение? классы же приходят разные interface A {void print()}
interface B {...}
interface C {...}
interface D {...}
class Foo implements B, A {...}
class Bar implements C, A {...}
function x(A g) {g.print()}
x(new Foo())
x(new Bar())IK
AT
x в месте g.print() определить смещение? классы же приходят разные interface A {void print()}
interface B {...}
interface C {...}
interface D {...}
class Foo implements B, A {...}
class Bar implements C, A {...}
function x(A g) {g.print()}
x(new Foo())
x(new Bar())print в виртуальной таблице для интерфейса A одинаковое для всех классов.ВМ
x в месте g.print() определить смещение? классы же приходят разные interface A {void print()}
interface B {...}
interface C {...}
interface D {...}
class Foo implements B, A {...}
class Bar implements C, A {...}
function x(A g) {g.print()}
x(new Foo())
x(new Bar())ВМ