Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 就记忆而言,是;实施;比“更高效”;扩展;?_Java_Oop_Design Patterns - Fatal编程技术网

Java 就记忆而言,是;实施;比“更高效”;扩展;?

Java 就记忆而言,是;实施;比“更高效”;扩展;?,java,oop,design-patterns,Java,Oop,Design Patterns,我正在研究模式,我对原型模式(对象的组成)和内存占用有疑问 这个模式是Java中缺少多重继承的一个可能的解决方案,但是让我们假设Java有多重继承 在原型模式中使用接口的实现是否比对内存执行多重继承更有效 在子类上进行“扩展”与在该子类上实例化新对象在内存占用方面是否相同 每个Java对象都有一个,因此我假设“嵌入式”超类对象消耗的内存比在另一个对象中组合时少(在第一种情况下,它们共享相同的对象头)。此外,在合成的情况下,父对象有一个指向合成对象的引用(指针) 因此,我会说“实现”的效率较低,但

我正在研究模式,我对原型模式(对象的组成)和内存占用有疑问

这个模式是Java中缺少多重继承的一个可能的解决方案,但是让我们假设Java有多重继承

在原型模式中使用接口的实现是否比对内存执行多重继承更有效

在子类上进行“扩展”与在该子类上实例化新对象在内存占用方面是否相同

每个Java对象都有一个,因此我假设“嵌入式”超类对象消耗的内存比在另一个对象中组合时少(在第一种情况下,它们共享相同的对象头)。此外,在合成的情况下,父对象有一个指向合成对象的引用(指针)

因此,我会说“实现”的效率较低,但我很难想到在实践中这会起作用的用例


PS我看不出你的问题与模式有什么关系。

你说的是合成模式还是原型模式?原型模式。