public_method1
не является публичным методом. Это метод для анонимного объекта, который полностью создается в операторе return вашей функции конструктора.
Если вы хотите вызвать его, почему бы не структурировать объект следующим образом:
var myObject = function() {
var p...
function private_method() {
another_object.public_method1()
}
var another_object = {
public_method1: function() {
....
}
}
return another_object;
}() ;