Recientemente, leí algunos de los conocimientos orientados al conocimiento, y luego seguí la explicación del maestro para hacer un mini juego alrededor del sol alrededor del sol para practicar y consolidar el conocimiento reciente de aprendizaje:
Uso de puntos de conocimiento: herencia de clase, carga y reescritura de métodos, polimorfismo, embalaje, etc.
analizar:
1. Necesito cargar imágenes y dibujos
2. Construya un panel, página de inicio
3. Planeta
Mapa de efecto:
Primero mire el diagrama de estructura del código fuente:
Ahora analice gradualmente las funciones de cada clase:
1) Herramientas ----- Paquete Util
-La clase constante encapsuló la constante utilizada en el juego
-La clase de GameUtil encapsula la función de carga de la imagen del juego
-MyFrame Class la estructura del panel de juego para la clase padre de cada panel
------ La razón de esto es encapsular datos para facilitar la expansión del programa.
Constante.java
Paquete utilizado;
GameUtil.java
Paquete UTIS; Autor Long * */Public Class Gametil {private Gametil () {} // La clase de herramientas generalmente construye el Constructor Public Public Static GetImage (String Path) {Url u = GameUti. ; Myframe.java
Paquete utilizado; / public void LaunchFrame () {Jframe marco = nuevo JFrame ("MyGame"); Frame.setLocationRelationOto (nulo); @Author Dell * */class PainThreads Threads Thread {public void run () {while (true) {Reprain (); printStackTrace ();}}} public static void main (string [] args) {new MyFrame (). 2) Clase de manejo de eventos principales --- En el paquete solar
-Lanets de la clase de planeta heredan a la clase de estrellas
-Los paneles principales del juego de marco de solar heredan a la clase MyFrame
-Laneta de clase de estrella, el padre de cada planeta
-La clase de prueba de clase, no es necesario explicar
Planeta.java
paquete solar; / Excepto para imágenes y coordenadas, el planeta corre a lo largo de la elipse: eje largo, eje corto, velocidad de movimiento, ángulo de rotación. Ejecute el doble longAXIS alrededor de una estrella; , (int) x, (int) y, nulo); (Center.x+Center.w/2) -longaxis; (Color.Blue); .x + longaxis * math.cos (grado); } Public Planet (String imgpath, doble x, doble y) {super (imgpath, x, y);} bil planeta (centro estrella, imagen img, doble longaxis, doble cortaxis, doble velocidad) {super (); = (Center.x+Center.w /2)+longAXIS; .longaxis = longAXIS; (Imgpath), longaxis, shortaxis, velocidad);}}Solarframe.java
paquete solar; .Game_Height/2; Earth.png ", 100,60,0.1); Planet Mars = New Planet (Sun," Images/Mars.png ", 180,100,0.15); @Override public void Paint (Graphics g) {Wimage (BG, 0, 0, 0, 0, 0, 0, 0, , nulo);Star.java
Paquete solar; int) x, (int) y, null);} public star () {} Public Star (Image img) {this.img = img; (nulo);} estrella pública (imagen img, doble x, doble y) {this (img); this (gameUtil.getImage (imgpath), x, y);Resumen: Este mini juego se maneja mejor por la encapsulación del código, que facilita la expansión del programa y refleja la fuerza de las diferentes funciones orientadas al objeto. Habrá varios pequeños problemas y detalles en el proceso de varias categorías en la etapa inicial, pero después de lidiar con estos, el número de planetas en el período posterior es relativamente simple. usado. El agua orientada al objeto es demasiado profunda, esto es solo una participación preliminar, ¡y aún necesita continuar trabajando duro! Intersección Intersección
Lo anterior es el análisis del análisis de juegos solar Java y el código fuente.