a Problem with java 2D

L

Lew

Chris said:
Yes, I realise that.

Then why did you highlight the closing paren?
What I find odd, is that there is a new scope
{ /* more stuff */ }, prior to the closing parenthesis.

It's a class definition.
IOW, is something like:

void Foo( new Bar() { System.out.println( "In the body of new
Bar" ); } );

....legal in Java?

No, because you are not defining a class inside the braces. IOW, the
System.out.println() has to happen inside a method. Also, you don't declare
the anonymous class in the declaration of the calling method (Foo, here, which
should have used a lower-case first letter in its name), but in its invocation.

<untested>
public interface Bar
{
public void do();
}

public class Foo
{
public void foo( Bar bar )
{
bar.do();
}

public static void main( String [] args )
{
Foo foo = new Foo();
foo.foo( new Bar()
{
public void do()
{
System.out.println( "In the body of new Bar" );
}
}
);
}
}
</untested>

Research anonymous classes.

<http://java.sun.com/docs/books/jls/third_edition/html/expressions.html#15.9.5>

<http://java.sun.com/docs/books/tutorial/java/javaOO/innerclasses.html>
gives this a brief mention.

One of the best sites around for learning about Java features is mindprod.com.
<http://mindprod.com/jgloss/anonymousclasses.html>
 
C

Chris ( Val )

Then why did you highlight the closing paren?

Because I thought it was a problem with the syntax, and
I did (I thought clearly) enquire if it was legal syntax.
It's a class definition.




No, because you are not defining a class inside the braces. IOW, the
System.out.println() has to happen inside a method.

Ok, that wasn't meant to be a perfect example, that's why I said:
"something like..."
Also, you don't declare
the anonymous class in the declaration of the calling method (Foo, here, which
should have used a lower-case first letter in its name), but in its invocation.

[snip - example that used a java keyword :)]
Research anonymous classes.

[snip]

Thank you.

I will check it out, as I had not come across such a syntax before.
One of the best sites around for learning about Java features is mindprod.com.
<http://mindprod.com/jgloss/anonymousclasses.html>

Yes, Roedy has done a great job and is very helpful.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,777
Messages
2,569,604
Members
45,204
Latest member
LaverneRua

Latest Threads

Top