diff --git a/runtime/doc/version9.txt b/runtime/doc/version9.txt
index 3614ce3..fbe9b98 100644
--- a/runtime/doc/version9.txt
+++ b/runtime/doc/version9.txt
@@ -1,4 +1,4 @@
-*version9.txt*  For Vim version 9.1.  Last change: 2025 Feb 08
+*version9.txt*  For Vim version 9.1.  Last change: 2025 Feb 11
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -41551,6 +41551,8 @@
 
 Enum support for Vim9 script |:enum|
 
+Support for protected _new() method
+
 							*new-other-9.2*
 Other new features ~
 ------------------
diff --git a/runtime/doc/vim9class.txt b/runtime/doc/vim9class.txt
index 9aab6c7..5e5c28e 100644
--- a/runtime/doc/vim9class.txt
+++ b/runtime/doc/vim9class.txt
@@ -1,4 +1,4 @@
-*vim9class.txt*	For Vim version 9.1.  Last change: 2024 Dec 29
+*vim9class.txt*	For Vim version 9.1.  Last change: 2025 Feb 11
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -272,6 +272,9 @@
 When defining the new() method the return type should not be specified.  It
 always returns an object of the class.
 
+The new() method can be made a protected method by using "_new()".  This can
+be used to support the singleton design pattern.
+
 							*E1386*
 When invoking an object method, the method name should be preceded by the
 object variable name.  An object method cannot be invoked using the class
diff --git a/src/testdir/test_vim9_class.vim b/src/testdir/test_vim9_class.vim
index 0b3ea4a..7a269fc 100644
--- a/src/testdir/test_vim9_class.vim
+++ b/src/testdir/test_vim9_class.vim
@@ -12374,4 +12374,39 @@
   v9.CheckSourceSuccess(lines)
 enddef
 
+" Test for using a protected new() method (singleton design pattern)
+def Test_protected_new_method()
+  var lines =<< trim END
+    vim9script
+    class A
+      def _new()
+      enddef
+    endclass
+    var a = A.new()
+  END
+  v9.CheckSourceFailure(lines, 'E1325: Method "new" not found in class "A"', 6)
+
+  lines =<< trim END
+    vim9script
+    class A
+      static var _instance: A
+      var str: string
+      def _new(str: string)
+        this.str = str
+      enddef
+      static def GetInstance(str: string): A
+        if _instance == null
+          _instance = A._new(str)
+        endif
+        return _instance
+      enddef
+    endclass
+    var a: A = A.GetInstance('foo')
+    var b: A = A.GetInstance('bar')
+    assert_equal('foo', a.str)
+    assert_equal('foo', b.str)
+  END
+  v9.CheckSourceSuccess(lines)
+enddef
+
 " vim: ts=8 sw=2 sts=2 expandtab tw=80 fdm=marker
diff --git a/src/version.c b/src/version.c
index 76de99d..f9aa19a 100644
--- a/src/version.c
+++ b/src/version.c
@@ -705,6 +705,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1105,
+/**/
     1104,
 /**/
     1103,
diff --git a/src/vim9class.c b/src/vim9class.c
index 47ab236..8220536 100644
--- a/src/vim9class.c
+++ b/src/vim9class.c
@@ -2375,7 +2375,8 @@
 	{
 	    exarg_T	ea;
 	    garray_T	lines_to_free;
-	    int		is_new = STRNCMP(p, "new", 3) == 0;
+	    int		is_new = STRNCMP(p, "new", 3) == 0
+						|| STRNCMP(p, "_new", 4) == 0;
 
 	    if (has_public)
 	    {
@@ -2601,7 +2602,8 @@
 	for (int i = 0; i < classfunctions.ga_len; ++i)
 	{
 	    class_func = ((ufunc_T **)classfunctions.ga_data)[i];
-	    if (STRCMP(class_func->uf_name, "new") == 0)
+	    if (STRCMP(class_func->uf_name, "new") == 0
+				|| STRCMP(class_func->uf_name, "_new") == 0)
 	    {
 		have_new = TRUE;
 		break;
