Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 7518813
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 30, 20262026-05-30T01:48:14+00:00 2026-05-30T01:48:14+00:00

I’m looking to do something like this in Java: public OuterClass { public innerClass

  • 0

I’m looking to do something like this in Java:

public OuterClass {

    public innerClass = new Object() {
        private var1;

        public void myMethod() {
           ...
        }
    }

}

and use it like this:

OuterClass outer = new OuterClass();
outer.innerClass.myMethod();

The reason is to basiclly namespace some methods within the OuterClass to keep things organised.

I know I could create an instance of innerClass and assign it to a public instance variable of OuterClass but I’m looking for an inline way of doing it like above example. I don’t want it to be possible to instantiate the innerClass more than once hence the inline approach.

This woule be similar to the following JavaScript:

var innerObject = new function() {
   ...       
}
  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-30T01:48:14+00:00Added an answer on May 30, 2026 at 1:48 am

    What you asked in the question title is possible, but unfortunately not what you really want.

    In your code, the line with the declaration of the field innerClass misses a type for the field. With the rest of the code unchanged, there is only one possibility: Object.

    So your code would read like this:

    public OuterClass {
    
        public Object innerClass = new Object() {
            private var1;
    
            public void myMethod() {
               ...
            }
        }
    }
    

    This is actually possible, but calling the method myMethod is not possible. When you access outer.innerClass, this expression is of type Object, which does not have a method myMethod, so the code won’t compile.

    You can however introduce an interface MyInnerInterface

    interface MyInnerInterface {
        void myMethod();
    }
    

    and change the type of the field to MyInnerInterface:

    public OuterClass {
    
        public MyInnerInterface innerClass = new MyInnerInterface() {
            private var1;
    
            public void myMethod() {
               ...
            }
        }
    }
    

    Then accessing the method is possible. However you have the drawback of the additional interface.

    Also this code is unusual and I wouldn’t consider it good. If you really want to have an inner class here, don’t use an anonymous class, but a real class:

    public OuterClass {
    
        public class InnerClass  {
            private var1;
    
            public void myMethod() {
               ...
            }
        }
    
        public InnerClass innerClass = new InnerClass();
    }
    

    Still, using an inner class for “scoping” accesses from the outside is something I wouldn’t do. Inner classes should usually be an implementing detail of the outer class and not be accessible to the public. Better think about how to separate your API into real co-existing classes (which of course might have references onto each other, and possibly access package-private members).

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I have a string like this: La Torre Eiffel paragonata all’Everest What PHP function
For some reason, after submitting a string like this Jack’s Spindle from a text
I'm parsing an RSS feed that has an ’ in it. SimpleXML turns this
I have this code: - (void)parser:(NSXMLParser *)parser foundCDATA:(NSData *)CDATABlock { NSString *someString = [[NSString
I have some data like this: 1 2 3 4 5 9 2 6
I have a jquery bug and I've been looking for hours now, I can't
I would like to count the length of a string with PHP. The string
link Im having trouble converting the html entites into html characters, (&# 8217;) i
this is what i have right now Drawing an RSS feed into the php,
I've got a string that has curly quotes in it. I'd like to replace

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.