user1204570
user1204570

Reputation: 219

nested type cannot hide an enclosing type

What does this error mean?

The nested type HelloWorld cannot hide an enclosing type

Where HelloWorld is the java file name. Here's the code if you need it:

import net.java.games.jogl.*;
public class HelloWorld
{ // open HelloWorld

    public class HelloWorld
    { // open HelloWorld

        public static void main (String args[])
        { // open main
            try
            { // open try
                System.loadLibrary("jogl");
                System.out.println("Hello World! (The native libraries are installed.)");
            } // close try
            catch (Exception e) // all try's need a catch
            { } // even if the catch does nothing
        } // close main

    } // close HelloWorld

);

Upvotes: 19

Views: 60466

Answers (5)

Eyal Sooliman
Eyal Sooliman

Reputation: 2248

You need to delete one of the duplicated classes:

public class HelloWorld { // open HelloWorld

public class HelloWorld
{ // open HelloWorld

Upvotes: 2

kosa
kosa

Reputation: 66657

       import net.java.games.jogl.*; 
public class HelloWorld { 
    // open HelloWorld      
    public class HelloWorld     {
     // open HelloWorld 

Remove one of the public class HelloWorld { and corresponding } brace.

Upvotes: 1

purpleladydragons
purpleladydragons

Reputation: 1305

Just delete one of your declarations for public class HelloWorld; you're using it twice, only one is required.

Upvotes: 2

alan
alan

Reputation: 890

You're declaring the HelloWorld class twice.

Upvotes: 4

glose
glose

Reputation: 517

You have defined the HelloWorld class twice. Remove one level and you should be fine.

Upvotes: 25

Related Questions