Conceptos de diseño y desarrollo de juegos Java
(2) Distribuido: Java viene con una biblioteca convencional muy potente de la familia de protocolos TCP/IP. Las aplicaciones Java pueden acceder a objetos remotos a través de la red a través de URL. Debido a la aparición del mecanismo de servlet, Java. La programación es muy eficiente y muchos servidores web grandes ahora admiten servlets.
(3)OO: El diseño orientado a objetos es una tecnología de programación que se centra en objetos e interfaces de objetos. Su orientación a objetos tiene muchas diferencias con respecto a C++ en su manejo de la herencia múltiple y el modelo de clases original de Java.
(4) Robustez: Java adopta un modelo de puntero seguro, que reduce la posibilidad de reescritura de memoria y corrupción de datos.
(5) Seguridad: Java se utiliza para diseñar sistemas de red y distribución, lo que genera nuevos problemas de seguridad. Java se puede utilizar para crear sistemas antivirus y antiataques. Resulta que Java es mejor antivirus.
(6) Arquitectura neutral: el formato de archivo de objeto de arquitectura neutral generado por el compilador de Java se puede ejecutar en muchos procesadores. El código de bytes de instrucción (Javabytecode) generado por el compilador se da cuenta de esto. Característicamente, este código de bytes puede ser. interpretado y ejecutado en cualquier máquina.
(7) Portabilidad: Java tiene regulaciones estrictas sobre el tamaño de los algoritmos y tipos de estructuras de datos básicos, por lo que la portabilidad es muy buena.
(8) Subprocesos múltiples: el proceso de Java para manejar subprocesos múltiples es muy simple. Java deja la implementación de subprocesos múltiples al sistema operativo subyacente o al programa de subprocesos. Por lo tanto, el subproceso múltiple es una de las razones de la popularidad de Java como lenguaje de desarrollo del lado del servidor.
(9) Applets y servlets: los programas que se pueden ejecutar en páginas web se denominan applets, que requieren muchos navegadores que admitan Java, y los applets admiten páginas web dinámicas, que muchos otros lenguajes no pueden hacer.
Conceptos básicos
1. La única relación en la programación orientada a objetos es la interfaz del objeto. Al igual que un vendedor de computadoras, no le importa la estructura interna de la fuente de alimentación. A él sólo le importa si puede proporcionar. Sólo necesita proporcionar electricidad, es decir, siempre que sepa si se puede hacer pero no cómo ni por qué. Todos los programas se componen de objetos con ciertos atributos y comportamientos. El acceso a diferentes objetos se completa mediante llamadas a funciones. Toda la comunicación entre objetos se completa mediante llamadas a métodos. La encapsulación mejora en gran medida la reutilización.
2. La idea más importante en programación orientada a objetos es la clase. La clase es la plantilla y el modelo. Construir un objeto a partir de la clase significa crear una instancia de la clase.
3. Encapsulación: es el proceso de implementación de combinar datos y comportamiento en un paquete y ocultar los datos del usuario del objeto. Los datos en un objeto se denominan su campo de instancia (campo de instancia).
4. Obtener una nueva clase extendiendo una clase se llama herencia, y todas las clases se extienden mediante la superclase raíz del objeto. La superclase raíz se presentará a continuación.
5. 3 características principales de los objetos
comportamiento--- describe lo que el objeto puede hacer.
estado----, el reflejo del objeto cuando se aplica un método al objeto.
Características: marcas que lo distinguen de otros objetos con comportamiento similar.
Cada objeto tiene un identificador único y estos tres identificadores se influyen entre sí.
6. Relación entre clases:
Uso -a: relación de dependencia
tiene-a: relación de agregación
es- a: Relación de herencia: ejemplo: en este momento, la clase A no solo tiene los métodos de la clase B, sino que también tiene sus propios métodos.
(La personalidad existe en el infierno)
7. Utilice constructores para construir objetos: la introducción de constructores, que son métodos especiales que construyen un objeto y lo inicializan.
Ejemplo: el constructor de la clase Data se llama Data
new Data(): construye un nuevo objeto e inicializa la hora actual.
Data happyday=new Data()--Asigne el objeto a la variable happyday para que el objeto pueda usarse varias veces, donde la variable a declarar es diferente de la variable del objeto.
Características de los constructores: Un constructor puede tener cero, uno o más parámetros
El constructor y la clase tienen el mismo nombre
Una clase puede tener Múltiples constructores
Los constructores no tienen valor de retorno
Los constructores siempre se utilizan con el nuevo operador. 8. Sobrecarga: la sobrecarga ocurre cuando varios métodos tienen el mismo nombre pero diferentes parámetros. El compilador debe elegir qué método llamar.
9. Paquete (paquete) Java permite agrupar una o más clases, denominadas paquete, para facilitar la organización de las tareas. La biblioteca estándar de Java se divide en varios paquetes. Los paquetes como java.lang, java.util, java, net, etc. son jerárquicos y todos los paquetes java están dentro de la jerarquía de los paquetes java y javax.
10. Idea de herencia: Permite la construcción de nuevas clases basadas en clases existentes. Cuando heredas de una clase existente, puedes reutilizar métodos y campos de esa clase, y también puedes agregar nuevos métodos y campos en la nueva clase.
11. Clase de extensión: la clase de extensión encarna completamente la relación de herencia es-una. Su forma es: extensión de clase (subclase) (clase base).
12. Polimorfismo: En Java, las variables de objeto son polimórficas. La herencia múltiple no es compatible con Java.
13. Enlace dinámico: el mecanismo para llamar a métodos de objetos.
(1) El compilador verifica el tipo y los nombres de método de la declaración del objeto.
(2) El compilador verifica el tipo de parámetro de la llamada al método.
(3) Enlace estático: si el tipo de método es final estático privado, el compilador sabrá qué método llamar.
(4) Cuando el programa se está ejecutando, si se utiliza el enlace dinámico para llamar a un método, la máquina virtual debe llamar a la versión del método que coincida con el tipo real del objeto señalado por x.
(5) Enlace dinámico: esta es una característica importante que permite a los programas lograr extensibilidad sin tener que volver a compilar el código existente.
14.clase final: para evitar que otros deriven nuevas clases de su clase, esta clase no es extensible.
15. Las llamadas dinámicas tardan más que las estáticas.
16. Clase abstracta: una clase que especifica uno o más métodos abstractos debe definirse a su vez como una clase abstracta.
Por ejemplo: cadena abstracta pública getDescripition
17. Cada clase en Java se extiende desde la clase Objeto.
18. Métodos Equal y toString en clases de objetos.
equal se utiliza para probar si un objeto es igual a otro objeto.
toString devuelve una cadena que representa el objeto. Casi todas las clases sobrecargarán este método para devolver una representación correcta del estado actual.
(el método toString es un método muy importante)
19. Programación universal: todos los valores de cualquier tipo de clase pueden ser reemplazados por variables de la misma clase de objeto.
20. ArrayList ArrayList La lista de matrices dinámica es una biblioteca de clases definida en el paquete java.uitl que puede ajustar automáticamente el tamaño de la matriz.
Clase 21.class: El método getclass en la clase de objeto devuelve una instancia del tipo ckass. La clase incluida en el método principal se cargará cuando se inicie el programa. La máquina virtual carga todas las clases. necesita. Cada La clase cargada carga las clases que necesita.
La clase 22.class proporciona una poderosa función de reflexión para escribir programas que pueden operar dinámicamente código Java. Esta función es particularmente útil para JavaBeans. El uso de reflexión Java puede admitir herramientas que los programadores de VB están acostumbrados a usar.
La capacidad de analizar clases se llama reflector del programa. Java proporciona esta función en un paquete llamado Java.lang.reflect. El mecanismo de reflexión es muy poderoso.
1. La capacidad de analizar clases en tiempo de ejecución.
2. Capacidad de detectar objetos de clase en tiempo de ejecución.
3. Implementar código de operación de matriz general.
4. Proporcionar objetos de método. Este mecanismo está dirigido principalmente a proveedores de herramientas, no a aplicaciones y programas.
La parte más importante del mecanismo de reflexión es que te permite inspeccionar la estructura de una clase. Las API utilizadas incluyen:
java.lang.reflect.Method y. Método de devolución.
parámetros de retorno de java.lang.reflect.Constructor.
Puntero de método: java no tiene puntero de método. Pasar la dirección de un método a otro método le permite llamarlo más tarde.
23. Una interfaz describe lo que debe hacer una clase, pero no especifica cómo hacerlo. Una clase puede implementar una o más interfaces.
24. Una interfaz no es una clase, sino un conjunto de especificaciones de clases que cumplen los requisitos de la interfaz.
Si implementas una interfaz, necesitas dos pasos:
1. Declarar la interfaz especificada que la clase necesita implementar.
2. Proporcionar definiciones para todos los métodos en la interfaz.
Para declarar que una clase implementa una interfaz, debe usar la palabra clave de terminación
La clase acciónB implementa Comparable y su acciónb debe proporcionar el método CompareTo. La interfaz no es un. clase, y no puede usar new para crear una instancia de la interfaz.
25. Una clase tiene solo una superclase, pero una clase puede implementar múltiples interfaces:
26. Un patrón común en programación es el patrón de devolución de llamada, en el que se especifica un método en un objeto para que se le devuelva la llamada cuando ocurre un momento específico.
Ejemplo: escucha de la interfaz ActionListener.
API similares son: java.swing.JOptionPane
java.swing.Timer
java.awt No se puede llamar simplemente.
28. Clase interna: Una clase interna se refiere a una clase definida en otra clase interna.
Los motivos son los siguientes:
1. El objeto de la clase interna puede acceder a la implementación del objeto que lo creó, incluidos los datos privados.
2. Las clases internas se pueden ocultar de otras clases en el mismo paquete.
3. Las clases internas anónimas pueden definir fácilmente devoluciones de llamada.
4. Los programas controlados por eventos se pueden escribir fácilmente utilizando clases internas.
29. Clase de proxy (proxy):
1. Especifique los requisitos de interfaz para todos los códigos
2. La clase de objeto define todos los métodos (toString es igual). a)
30. Tipo de datos: Java es un lenguaje que enfatiza los tipos. Cada variable primero debe declarar su tipo. Hay un total de 8 tipos básicos.
30. Tipo de datos: Java es un lenguaje que enfatiza los tipos. Cada variable primero debe declarar de qué tipo es. Java tiene un total de 8 tipos básicos, 4 de los cuales son enteros, 2 tipos son flotantes. tipos de puntos, 1 tipo es tipo de carácter (para caracteres codificados en Unicode) y 1 tipo es tipo booleano.