Articles of constructor de

¿Cómo se escapa la referencia `this` a una clase externa mediante la publicación de una instancia de clase interna?

Esto se formuló de manera ligeramente diferente, pero solicitando una respuesta de sí / no, pero estoy buscando la explicación que falta en el libro (Concurrencia de Java en la práctica), sobre cómo este aparente gran error podría explotarse maliciosa o accidentalmente. Un último mecanismo mediante el cual se puede publicar un objeto o su […]

mecanismo de invocación del constructor

struct my { my(){ std::cout<<"Default";} my(const my& m){ std::cout<<"Copy";} ~my(){ std::cout<<"Destructor";} }; int main() { my m(); //1 my n(my()); //2 } Rendimiento esperado : 1 ) Default 2 ) Copy Salida real: ¿Qué hay de malo en mi comprensión del mecanismo de invocación del constructor? Note que he omitido los archivos de cabecera por […]

Sincronización del constructor en Java

Alguien en algún lugar me dijo que los constructores de Java están sincronizados para que no puedan accederse simultáneamente durante la construcción, y me preguntaba: si tengo un constructor que almacena el objeto en un mapa, y otro hilo lo recupera de ese mapa antes de su construcción finaliza, ¿se bloqueará el hilo hasta que […]

¿Por qué los constructores no pueden ser heredados en Java?

Soy un principiante en el lenguaje de progtwigción java, recientemente he estudiado que los constructores no pueden ser heredados en java. ¿Puede alguien explicar por qué ? Ya leí este enlace de C ++

¿este objeto de javascript se refiere a objetos recién creados de la manera en que pienso

Entonces, cuando creamos la función constructora para crear un nuevo objeto, la nueva palabra clave hace 3 cosas que voy a explicar, pero por favor corrígeme si me equivoco, quiero estar seguro de que estoy en lo cierto. primero crearé una función constructora function ObjectCreate(){ this.a = “a”; this.b = “b”; ObjectCreate.prototype.show = function(){ alert(this.a+” […]

¿Cómo se usa el constructor no predeterminado para un miembro?

Tengo dos clases class a { public: a(int i); }; class b { public: b(); //Gives me an error here, because it tries to find constructor a::a() a aInstance; } ¿Cómo puedo obtenerlo para que instale una instancia con un (int i) en lugar de intentar buscar un constructor predeterminado? Básicamente, quiero controlar la llamada […]

¿Por qué el comstackdor de c # emite Activator.CreateInstance cuando llama a new in con un tipo genérico con una nueva () restricción?

Cuando tienes un código como el siguiente: static T GenericConstruct() where T : new() { return new T(); } El comstackdor de C # insiste en emitir una llamada a Activator.CreateInstance, que es considerablemente más lento que un constructor nativo. Tengo la siguiente solución alternativa: public static class ParameterlessConstructor where T : new() { public […]

Copia profunda de una matriz de objetos

Quiero hacer una copia profunda de una matriz de objetos usando un constructor. public class PositionList { private Position[] data = new Position[0]; public PositionList(PositionList other, boolean deepCopy) { if (deepCopy){ size=other.getSize(); data=new Position[other.data.length]; for (int i=0;i<data.length;i++){ data[i]=other.data[i]; } Sin embargo, lo que tengo arriba por alguna razón no está funcionando. He automatizado las pruebas […]

¿Propósito de un constructor en Java?

¿Cuál es el propósito de un constructor? He estado aprendiendo Java en la escuela y me parece que un constructor es en gran medida redundante en las cosas que hemos hecho hasta ahora. Queda por ver si se produce un propósito, pero hasta ahora no parece tener sentido para mí. Por ejemplo, ¿cuál es la […]

¿Es una buena práctica hacer que el constructor arroje una excepción?

¿Es una buena práctica hacer que el constructor arroje una excepción? Por ejemplo, tengo una clase Person y tengo la age como su único atributo. Ahora proporciono la clase como class Person{ int age; Person(int age) throws Exception{ if (age<0) throw new Exception("invalid age"); this.age = age; } public void setAge(int age) throws Exception{ if […]