Metodo statico o clase abstractas

Hola bueno estoy haciendo un proyecto y tengo una duda, estoy haciendo un proyecto el cual tiene una clase publica, que no la voy a instanciar nunca
Solo quiero usar sus metodos(todos son estaticos), ahora el problema es cuando quiero llamar metodos de otra clase no me deja, por que no son estaticos y son las clases que vienen por defecto en JavaSE,

estuve leyendo algo sobre las clases abstractas y las instancias estáticas,
como puedo solucionar este problema, sin cambiar mis metodos
Gracias........

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de neko069

Postea el código

Postea tu clase entre tags de <code> y </code>.

Mi clase

package juegopalabras;

import java.util.Random;
import javax.swing.Icon;
import javax.swing.ImageIcon;

public class ExpresionesTutor {

   

    public ExpresionesTutor() {
       
    }

   

    public static Icon caritaMalas() {
        Icon cara;

        switch (aleatorio()) {
            case 1:
                cara = new ImageIcon(getClass().getResource("/ImagenesCarita/carita'(.png"));
                break;
            case 2:
                cara = new ImageIcon(getClass().getResource("/ImagenesCarita/carita(.png"));
                break;
            case 3:
                cara = new ImageIcon(getClass().getResource("/ImagenesCarita/carita(2.png"));
                break;
            case 4:
                cara = new ImageIcon(getClass().getResource("/ImagenesCarita/caritaFace.png"));
                break;
            case 5:
                cara = new ImageIcon(getClass().getResource("/ImagenesCarita/caritaS.png"));
                break;
            default:
                cara = new ImageIcon(getClass().getResource("/ImagenesCarita/carita(.png"));

        }

        return cara;
    }

    public static Icon caritaBuenas() {

        Icon cara;

        switch (aleatorio()) {
            case 1:
                cara = new ImageIcon(getClass().getResource("/ImagenesCarita/caraXD.png"));
                break;
            case 2:
                cara = new ImageIcon(getClass().getResource("/ImagenesCarita/carita8.png"));
                break;
            case 3:
                cara = new ImageIcon(getClass().getResource("/ImagenesCarita/carita).png"));
                break;
            case 4:
                cara = new ImageIcon(getClass().getResource("/ImagenesCarita/carita)2.png"));
                break;
            case 5:
                cara = new ImageIcon(getClass().getResource("/ImagenesCarita/caritaP.png"));
                break;
            default:
                cara = new ImageIcon(getClass().getResource("/ImagenesCarita/caritaP.png"));

        }
        return cara;
    }
   
   

    public static String comentariosMalos(String letra) {

        String comentario;

        switch (aleatorio()) {
            case 1:
                comentario = "  !! Valla ¡¡¡  que error";
                break;
            case 2:
                comentario = "Mendiga letra " + letra + " no estaba";
                break;
            case 3:
                comentario = "un error mas un erro menos ya que importa";
                break;
            case 4:
                comentario = letra + ", " + ", " + letra + ", " + letra + " No estas ?   Agrrr";
                break;
            case 5:
                comentario = "Eres un tramposo, como le haces";
                break;
            default:
                comentario = "Soy malo en esto, pero tu peor";

        }
        return comentario;
    }
   
   
   
   
   
    private static int aleatorio(){
       
        int opcion;
        Random caritaAleatoria = new Random();

        opcion = (int) (caritaAleatoria.nextDouble() * 6);
       
        return opcion;
    }
}

esta es mi clase y no la quiero instaciar, por que solo dare uso a un solo método cada ves que sea necesario y no la necesito como objeto,
me envía un error por que estoy invocando un método no estatico de la instancia cara, estuve investigando de como invocar un método no estático de uno estático, y leei que se puede hacer desde una instancia estatica pero jamas había escuchado eso y mucho menos aplicarlo, o no me queda mas opción que los métodos no sean estáticos y crear la instancia de esta clase

Imagen de beto.bateria

Cambia aleatorio() por estas

Prueba cambiando aleatorio() por estas opciones:

ExpresionesTutor.aleatorio()
this.aleatorio()

Imagen de ezamudio

estáticos

Desde un método estático no puedes llamar métodos que no son estáticos de la misma clase. Por ejemplo getClass(). Tendrías que escribir ExpresionesTutor.class.getResource...

Mira por ejemplo

este pedazo de codigo
cara = new ImageIcon(getClass().getResource("/ImagenesCarita/carita'(.png"));
me lanza este error "error getClass() no-static" y asi es con todas las lineas

Imagen de neko069

...

Ya iba a contestar, pero @ezamudio ya te dio la respuesta, sustituye el código que te lanza error, por el que ejemplifica @ezamudio y con éso.

Gracias ya me funciona

Muchas gracias me funciono, pero ami no me gusta quedarme con dudas entenderán me gusta saber :P
que diferencia hay entere

cara = new ImageIcon(ExpresionesTutor.class.getResource("/ImagenesCarita/carita'(.png"));
y
cara = new ImageIcon(getClass().getResource("/ImagenesCarita/carita'(.png"));

y como funcionan las dos lineas

Y este es el código listo eso es lo que necesitaba por que esta clase jamas la instanciare y solo necesito sus métodos y no como un objeto

package juegopalabras;

import java.util.Random;
import javax.swing.Icon;
import javax.swing.ImageIcon;
//import ImagenesCarita.*;

public class ExpresionesTutor {

   

    public ExpresionesTutor() {
       
    }

   

    public static Icon caritaMalas() {
        Icon cara;

        switch (aleatorio()) {
            case 1:
                cara = new ImageIcon(ExpresionesTutor.class.getResource("/ImagenesCarita/carita'(.png"));
                break;
            case 2:
                cara = new ImageIcon(ExpresionesTutor.class.getResource("/ImagenesCarita/carita(.png"));
                break;
            case 3:
                cara = new ImageIcon(ExpresionesTutor.class.getResource("/ImagenesCarita/carita(2.png"));
                break;
            case 4:
                cara = new ImageIcon(ExpresionesTutor.class.getResource("/ImagenesCarita/caritaFace.png"));
                break;
            case 5:
                cara = new ImageIcon(ExpresionesTutor.class.getResource("/ImagenesCarita/caritaS.png"));
                break;
            default:
                cara = new ImageIcon(ExpresionesTutor.class.getResource("/ImagenesCarita/carita(.png"));

        }

        return cara;
    }

    public static Icon caritaBuenas() {

        Icon cara;

        switch (aleatorio()) {
            case 1:
                cara = new ImageIcon(ExpresionesTutor.class.getResource("/ImagenesCarita/caraXD.png"));
                break;
            case 2:
                cara = new ImageIcon(ExpresionesTutor.class.getResource("/ImagenesCarita/carita8.png"));
                break;
            case 3:
                cara = new ImageIcon(ExpresionesTutor.class.getResource("/ImagenesCarita/carita).png"));
                break;
            case 4:
                cara = new ImageIcon(ExpresionesTutor.class.getResource("/ImagenesCarita/carita)2.png"));
                break;
            case 5:
                cara = new ImageIcon(ExpresionesTutor.class.getResource("/ImagenesCarita/caritaP.png"));
                break;
            default:
                cara = new ImageIcon(ExpresionesTutor.class.getResource("/ImagenesCarita/caritaP.png"));

        }
        return cara;
    }
   
   

    public static String comentariosMalos(String letra) {

        String comentario;

        switch (aleatorio()) {
            case 1:
                comentario = "  !! Valla ¡¡¡  que error";
                break;
            case 2:
                comentario = "Mendiga letra " + letra + " no estaba";
                break;
            case 3:
                comentario = "un error mas un erro menos ya que importa";
                break;
            case 4:
                comentario = letra + ", " + ", " + letra + ", " + letra + " No estas ?   Agrrr";
                break;
            case 5:
                comentario = "Eres un tramposo, como le haces";
                break;
            default:
                comentario = "Soy malo en esto, pero tu peor";
                break;

        }
        return comentario;
    }
   
    public static String comentariosBuenos(String letra){
        String comentario;

        switch (aleatorio()) {
            case 1:
                comentario = "WoW  me va bn con las palabras y letras";
                break;
            case 2:
                comentario = "Te amo letra " + letra + " Eres la mejor";
                break;
            case 3:
                comentario = "lest go por la victoria, jajajaja";
                break;
            case 4:
                comentario = letra + ", "+ letra + ", " + letra + ", " + letra + " Wiiii  jejejeje";
                break;
            case 5:
                comentario = "Soy el mejor que no te quepa duda";
                break;
            default:
                comentario = "Olle te doy un Consejo, !! RINDETE ¡¡ ";
                break;

        }
        return comentario;
    }
   
   
    public static String comentarioPerdedor(){
        String comentario;

        switch (aleatorio()) {
            case 1:
                comentario = "Grrrrr";
                break;
            case 2:
                comentario = "Como pude a Perder";
                break;
            case 3:
                comentario = "Solo Ganastes una Batalla falta La guerra";
                break;
            case 4:
                comentario = "Me la Suda Perder";
                break;
            case 5:
                comentario = "No estaba Listo";
                break;
            default:
                comentario = "Dame la rebancha Perdedor";
                break;

        }
        return comentario;
    }
   
   
   
    public static String comentarioGanador(){
        String comentario;

        switch (aleatorio()) {
            case 1:
                comentario = "En tu cara Jajajajaja";
                break;
            case 2:
                comentario = "Fuck yeah";
                break;
            case 3:
                comentario = "Hay tiene te lo dedica PAPA";
                break;
            case 4:
                comentario = "Arraze contigo";
                break;
            case 5:
                comentario = "Que vas hacer ahora? ¿ LLORAR ?";
                break;
            default:
                comentario = "Soy Demasiado Usted Buscate otro ";
                break;

        }
        return comentario;
    }
   
   
    private static int aleatorio(){
       
        int opcion;
        Random caritaAleatoria = new Random();

        opcion = (int) (caritaAleatoria.nextDouble() * 6);
       
        return opcion;
    }
}