How to complie

O

Odinn

Greetings , I am a newbie java learner , stepped from basic C knowlage
to java at my universty and sadly due to I was sick I missed the latest
course . I am seeking explaining about what this small program do and
how to complie it. When I try to complie it at terminal i am getting
"no suitable method `main' in class
" error. As far as I understood it looks like it will show some
graphics and it is some kind of javaapplet.

Here is the code:
import java.awt.*;
import javax.swing.*;

public class PointArrayApplet extends JApplet
{
public void paint(Graphics g)
{
Point [] triangle;
triangle=new Point[3];
triangle[0]=new Point(10,20);
triangle[1]=new Point(35,90);
triangle[2]=new Point(75,105);
g.drawString(triangle[0].toString(),10,20);
g.drawString(triangle[1].toString(),35,90);
g.drawString(triangle[2].toString(),75,105);
translate(triangle,100,200);
g.drawString(triangle[0].toString(),110,220);
g.drawString(triangle[1].toString(),135,290);
g.drawString(triangle[2].toString(),175,305);
}
public static void translate(Point []points,int deltaX,int deltaY)
{
for(int i=0;i<points.length;i++)
points.translate(deltaX,deltaY);
}
}

Thanks in advance.
 
O

Oliver Wong

Odinn said:
Greetings , I am a newbie java learner , stepped from basic C knowlage
to java at my universty and sadly due to I was sick I missed the latest
course . I am seeking explaining about what this small program do and
how to complie it. When I try to complie it at terminal i am getting
"no suitable method `main' in class
" error.

You compile a java program using "javac", and one of the ways to run the
program is using "java". If you get the error message "no suitable method
'main' in class", it means you've already compiled the program and are now
trying to run it.
As far as I understood it looks like it will show some
graphics and it is some kind of javaapplet.

Here is the code:
import java.awt.*;
import javax.swing.*;

public class PointArrayApplet extends JApplet
{
public void paint(Graphics g)
{
Point [] triangle;
triangle=new Point[3];
triangle[0]=new Point(10,20);
triangle[1]=new Point(35,90);
triangle[2]=new Point(75,105);
g.drawString(triangle[0].toString(),10,20);
g.drawString(triangle[1].toString(),35,90);
g.drawString(triangle[2].toString(),75,105);
translate(triangle,100,200);
g.drawString(triangle[0].toString(),110,220);
g.drawString(triangle[1].toString(),135,290);
g.drawString(triangle[2].toString(),175,305);
}
public static void translate(Point []points,int deltaX,int deltaY)
{
for(int i=0;i<points.length;i++)
points.translate(deltaX,deltaY);
}
}

Thanks in advance.


The program you have here is an applet, as you've noted. The "java"
command can be used to run stand-alone java programs, but not applets. To
run the applet, you either need to embed it in an HTML page and view it
using your webbrowser, or use the "appletviewer" program.

- Oliver
 
F

Fred Kleinschmidt

Odinn said:
Greetings , I am a newbie java learner , stepped from basic C knowlage
to java at my universty and sadly due to I was sick I missed the latest
course . I am seeking explaining about what this small program do and
how to complie it. When I try to complie it at terminal i am getting
"no suitable method `main' in class

the compiler should never make such a complaint.
Perhaps you mean that the error occurs when you try
to execute it?
" error. As far as I understood it looks like it will show some
graphics and it is some kind of javaapplet.

Here is the code:
import java.awt.*;
import javax.swing.*;

public class PointArrayApplet extends JApplet
{
public void paint(Graphics g)
{
Point [] triangle;
triangle=new Point[3];
triangle[0]=new Point(10,20);
triangle[1]=new Point(35,90);
triangle[2]=new Point(75,105);
g.drawString(triangle[0].toString(),10,20);
g.drawString(triangle[1].toString(),35,90);
g.drawString(triangle[2].toString(),75,105);
translate(triangle,100,200);
g.drawString(triangle[0].toString(),110,220);
g.drawString(triangle[1].toString(),135,290);
g.drawString(triangle[2].toString(),175,305);
}
public static void translate(Point []points,int deltaX,int deltaY)
{
for(int i=0;i<points.length;i++)
points.translate(deltaX,deltaY);
}
}

Thanks in advance.
 
O

Odinn

Thanks alot for the answers. Now I got it :)
Oliver Wong yazdi:
Odinn said:
Greetings , I am a newbie java learner , stepped from basic C knowlage
to java at my universty and sadly due to I was sick I missed the latest
course . I am seeking explaining about what this small program do and
how to complie it. When I try to complie it at terminal i am getting
"no suitable method `main' in class
" error.

You compile a java program using "javac", and one of the ways to run the
program is using "java". If you get the error message "no suitable method
'main' in class", it means you've already compiled the program and are now
trying to run it.
As far as I understood it looks like it will show some
graphics and it is some kind of javaapplet.

Here is the code:
import java.awt.*;
import javax.swing.*;

public class PointArrayApplet extends JApplet
{
public void paint(Graphics g)
{
Point [] triangle;
triangle=new Point[3];
triangle[0]=new Point(10,20);
triangle[1]=new Point(35,90);
triangle[2]=new Point(75,105);
g.drawString(triangle[0].toString(),10,20);
g.drawString(triangle[1].toString(),35,90);
g.drawString(triangle[2].toString(),75,105);
translate(triangle,100,200);
g.drawString(triangle[0].toString(),110,220);
g.drawString(triangle[1].toString(),135,290);
g.drawString(triangle[2].toString(),175,305);
}
public static void translate(Point []points,int deltaX,int deltaY)
{
for(int i=0;i<points.length;i++)
points.translate(deltaX,deltaY);
}
}

Thanks in advance.


The program you have here is an applet, as you've noted. The "java"
command can be used to run stand-alone java programs, but not applets. To
run the applet, you either need to embed it in an HTML page and view it
using your webbrowser, or use the "appletviewer" program.

- Oliver
 
A

Andrew Thompson

Odinn wrote:

Sorry - only just noticed this thread..
Greetings , I am a newbie java learner , .....
public class PointArrayApplet extends JApplet

Noobs and applets are a bad combination, as
applets are much harder to debug and deploy than
applications.

I noted (trimmed) the part re C++ experience and
am guessing you feel you are beyond the advice to
'start with command line applications only', however I
do recommend writing a few simple little CLI based
apps. - even to check a new Java installation..

I think you should put any GUI stuff aside for
the moment. Especially when the information
on which you are basing this code has not made
clear that ..
{
public void paint(Graphics g)

...Swing (the 'J'Applet above) components should
overide paintComponent(), rather than paint().

Andrew T.
 

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

No members online now.

Forum statistics

Threads
473,769
Messages
2,569,576
Members
45,054
Latest member
LucyCarper

Latest Threads

Top