Error "Illegal Start expression" -JFRAME y void- [SOLUCIONADO]

Iniciado por dato000, 20 Febrero 2011, 20:12 PM

0 Miembros y 1 Visitante están viendo este tema.

dato000

Buenas, un favor, he estado toda la mañana intenando hallar la solucion a este codigo, necesito crear unos JFrame que muestren unos puntos cartesianos en una ventana.

Pero no se que argumentos necesitan, ya he tratado de todo, el algoritmo funciona aparte con un api que recibi en donde importa unos paqutes que realizan las funciones que se invocan en este constructor. Pero eso no tiene relevancia, son los argumentos que necesito usar, y no la invocacion como tal con lo que tengo problema.

Pueden ayudarme??


/*
* Manuel Camilo Cepeda Martinez
* 066091006 Unilibre
*/

package unilibre;

import datos.Dimension;
import datos.Punto;
import io.Lecturas;
import javax.swing.JFrame;
import math.Operaciones;


/**
*
* @author dato000
*/
public class ejercicio2 extends JFrame{

   public static void main(String[] args){



       //restar y dividir
       Operaciones uno = new Operaciones();
       int restar = uno.sumar(145, 138);
       System.out.println(restar);

       double dividir = uno.multiplicar(1223, 13);
       System.out.println(dividir);

       double div = (double)8 / 14;
       System.out.println(div);

       //punto
       Punto micro = new Punto(205,205);

       int pX = micro.getX();
       int pY = micro.getY();
       
       void escribirpx = micro.setX(pX);----AQUI!!
       void escribirpy = micro.setY(pY);----AQUI!!

        //dimension
       Dimension bien = new Dimension(500, 500);
       int altura = bien.getAlto();
       int anchura = bien.getAncho();
       void editar_alt = bien.setAlto(x);  ----AQUI!!
       void editar_anc = bien.setAncho(y);  ----AQUI!!

       //lectura
       Lecturas luna1 = new Lecturas();
       String dataso1 = luna1.leerdato();
       JFrame cuadro1 = luna1.crearVentana(dataso1);
       JFrame cuadro2 = luna1.crearVentana(dataso1, micro);
       JFrame cuadro3 = luna1.crearVentana(dataso1, micro, bien);
       JFrame ventana = new JFrame(); ----AQUI!!
       mostrar = luna1.visualizarVentana(cuadro3); ----AQUI!!


   }



}




sapito169

De casualidad es la primera vez que programas orientado a objetos y siempre as programado funcional

Los métodos nunca devuelven void devuelven objetos o devuelven primitivos o no devuelven nada una variable jamás es de tipo void

Así que

void escribirpx = micro.setX(pX)

Esta mal

Debería ser

micro.setX(pX)

Otra cosa a tener en cuenta es que estas yendo demasiado rápido estas tratando de usar métodos cuando todavía no tienes la idea clara de como usarlo

Antes de tratar de hacer algo primero debes estar seguro de que tienes el conocimiento requerido necesario

Otra cosa que debería mejorarse es que el código no se ve lógico en lo mas minimo

Operaciones uno = new Operaciones();
        int restar = uno.sumar(145, 138);

que exista un metodo sumar que devuelva un variable llamada resta

Un método dividir que devuelva una variable llamada multiplicar


dato000

ok muchas gracias, me quedo más o menos claro, me ha funcionado perfectamente, muchas gracias.

Respecto a los metodos confusos. NO ES MI CULPA fue así como el profesor nos envio el api, me parece que lo hizo para confundirnos, pero no es nada espectacular, lo del void fue mucho más dificil, por lo menos, para mi.

Tuve que llamarlo restar para que quedara claro para mi lo que hacia la clase, el uno.sumar hacia la llamada al api que nos envio el profesor, que pues, no sumaba, sino retornaba la diferencia de dos numeros. Lo mismo pasaba con el metodo de multiplicar.



Gracias, fue de mucha ayuda esas lineas, gracias en serio, ya funciona la ventana.