Preciso de uma explicação sobre Canvas e JFrame

Opa! e ai tudo bem com vocês? sou novo no fórum e estou entrando agora nesse mundo da programação em Java, e estou com duvida sobre o que é a classe Canvas e JFrame, já até sai como fazer uma janela, não achei nada muito esclarecedor em relação a isso e Gostaria de saber mais sobre, algum veterano poderia me ajudar? desde já agradeço.
O comando para abrir a tela:

import java.awt.Canvas;
import java.awt.Dimension;

import javax.swing.JFrame;

public class ***** extends Canvas implements Runnable {

public static JFrame frame;
private final int LARGURA = 160; // alteravel
private final int ALTURA = 120; // alteravel
private final int ESCALA = 4;  // alteravel

public *****() {
	
	setPreferredSize(new Dimension(LARGURA*ESCALA, ALTURA*ESCALA));
	
	frame = new JFrame("Teste");
	frame.add(this);
	frame.setResizable(false);
	frame.pack();
	frame.setLocationRelativeTo(null);
	frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	frame.setVisible(true);
}
public static void main(String[] args) {
	
	Game game = new Game();
}

}

Com ele, vc consegue desenhar elementos 2D e assim conseguir desenvolver gráficos, jogos, aplicações como um Paint, por exemplo.

1 curtida

Resumidamente:

JFrame é uma classe que representa uma Janela que é apresentada no sistema operacional.

Canvas é um componente que representa uma superfície para desenhar, o desenho é implementado sobrescrevendo o método paint(Graphics).

2 curtidas

Valeu! Ajudou muito, realmente precisava de uma resposta assim.

Obrigado, realmente tava precisando saber disso.j