java base de conocimientos triviales

 

1, los tipos de variables java

Las variables de clase (variables estáticas): Usar la palabra clave static para declarar en la clase, en los bloques constructor, método, los estados de distancia. No importa cuánto una clase crea objetos, clases, variables de clase tiene solamente una copia. Las variables estáticas a partir del programa creado, destruido cuando el final del programa. Sólo se puede llamar a un método estático. De manera similar al Ejemplo variables tienen valores iniciales predeterminados. Se le puede llamar directamente por ClassName.ValueName.

Ejemplos de variables: una declaración en el constructor, método, o bloques que no sean declaraciones. En las variables de instancia cuando se creó el objeto de crear, destruir, cuando el objeto es destruido. variable de instancia se hace referencia a al menos un método constructor, o bloque. Ejemplos de tal valor de la variable externa se pueden obtener por estos medios. Las variables de instancia pueden ser declaradas antes de la referencia, también se puede declarar después de la referencia. variable de instancia es el valor predeterminado, el valor 0 es el tipo por defecto, defecto booleano es falso, el tipo de referencia predeterminado es nulo. Ejemplos de variables se pueden modificar utilizando modificadores de acceso.

Las variables locales: las variables declaradas en el constructor, el cual bloque de instrucciones. En el método de ejecución o cuando la creación bloque de instrucciones, serán destruidas después de la aplicación. modificador de acceso no se puede utilizar para modificar las variables locales, que se crean en la pila. No hay ningún defecto, así que asegúrese de usar la inicialización.

Las variables estáticas pertenecen a la clase, la clase no genera el objeto puede ser llamado una variable estática a través del nombre de la clase. Mientras el programa se carga la clase de código de bytes suficiente espacio se asigna

las variables de instancia de clase pertenecen al objeto, el objeto sólo puede generar llamadas variables de instancia. Hay que crear un objeto, sólo para asignar espacio

Método de llamadas estático sólo las variables estáticas. método no estático puede llamar variables estáticas pueden llamar a las variables de instancia.

miembros de datos estáticos son compartidos por todos los objetos creados, las variables estáticas de acceso de objetos utilizados son los mismos datos, la misma pieza de memoria. No importa el objeto de modificar las variables estáticas de otros objetos, la variable estática ha cambiado.

2, java de modificador

1) modificador de acceso

El modificador de acceso predeterminado : se puede utilizar para modificar clases, interfaces, métodos, variables. La clase predeterminada, este paquete sólo puede ser accesible a otras clases. El método de interfaz por defecto para el tipo de acceso público, variables de la interfaz public static final.

modificador de acceso privado , correspondiente a los: sólo se puede utilizar para modificar las variables, métodos, constructores. sólo puede ser modificado usando una visita privada de su clase. las clases y las interfaces externas privadas no pueden ser modificados. Esta variable se utiliza para proteger las variables y métodos no quiere estar accesible al exterior. las variables de operación pueden ser modificados mediante la modificación get privada, método set provisto.

El acceso público modificador --public: Las clases pueden ser modificadas, las variables, constructor, método

El acceso protegido modificador --protected: no se puede utilizar para decorar las clases e interfaces externas. clases internas, variables y métodos pueden ser modificados. Interna modificada clases, variables y otros tipos de métodos pueden ser invocados en el presente paquete.

clases protegidas interna modificada, métodos, variables, este paquete sólo pueden invocarse en otras clases, la herencia dentro de la clase se llama una subclase.

El método de una clase ha sido protegido modificado, denominado temporalmente a como la clase de la clase base. Con la clase de base en el mismo paquete una subclase de la clase ya sea en la clase base o no, puede acceder al método modificado protegido por instanciar objetos de clase instanciada o un grupo de la subclase de la clase base. No de la misma clase y la subclase paquete base de la clase base puede crear instancias método de acceso protegido para modificar súper palabra clave o por subcategoría a. No de la misma clase y el paquete de base no es una subclase de la clase base es modificado, no hay manera de llamar a un método en la clase base se modifica para ser protegidos.

En la clase padre se declara como método protegido en una subclase puede ser la vida para el público o protegido, no puede ser declarada: privada

2) modificadores de no acceso

Extender el conocimiento: el papel del constructor es crear objetos y inicialización de objetos. Las carreras constructor cuando la clase de objeto creado un objeto común llama al método cuando se implementa, el constructor se ejecuta sólo una vez, el número de método común de ejecución depende del objeto llamada.

Subclase hereda la clase padre, objeto de subclase se inicia cuando el constructor de la clase padre también tiene que ser realizado. Debido a que las subclases de la clase padre que usan esta propiedad o pantalla llamada implícita al constructor de la clase padre. Subclases comienza siempre con al menos un súper constructor (), puede ser implícita, por lo menos este no es el comienzo de una subclase constructor ();. El constructor puede llamar subclase de este constructor de la clase, una llamada indirecta al constructor de la superclase.

el este (); o super (); objetos se construyen de un tipo especificado en la máquina virtual JVM. Llamar a un constructor en otros dos constructores representa la creación de dos objetos, por lo que las disposiciones del presente (); o super (); necesidad en la primera línea del constructor.

Cuando otro constructor llama esta clase constructor, el presente () o super (); en la primera línea se requiere constructor, por lo que un constructor puede llamarse un constructor más.

esta palabra clave: this (); indica el constructor de la clase actual, este método sólo se puede colocar en el primer constructor fila, para asegurarse de que antes de cualquier acción, objeto ha sido inicializado, el constructor sólo puede ser llamado un constructor, para asegurar que sólo los objetos tiempo de inicialización.

En lugar de utilizar este método en general (); evitado debido a la operación del objeto, el objeto en sí mismo no se ha construido con éxito. Si desea llamar al método constructor, en general, se puede utilizar un nuevo objeto.

Cuando las variables miembro y variables locales duplican nombres, cuando se utiliza en este proceso, se representa por una variable miembro de la clase en que el método (esto representa el objeto actual en sí). Cuando hay variables locales sujetos a esta

Al pasar a sí mismo como un parámetro, puede utilizar esto (esto como se pasan los parámetros actuales)

Se encontró una clase interna o clase anónima dentro de la clase o el uso de clase anónima esto indicaba que la clase interna anónima o la propia clase. Si desea invocar un método o variable fuera de la clase puede: nombre del método nombre de la clase externa (método estático), fuera del nombre de la clase .Este nombre del método (método común)

modificador static: método estático que no es de este. esto representa los objetos, variable estática o método en la clase se carga cuando fue cargado, cargado antes de que el objeto creado. Si este objeto se coloca en un compilador método estático encontrarán esto en nombre de, pero no creó un objeto, no se puede detectar el error.

representa una variables de clase estática modificados o método de clase, no se puede utilizar variables locales modificación estática.

no pueden acceder a variables no estático en un método estático, ya que las variables no estáticos son parte del objeto, existe método estático antes de crear el objeto.

El modificador final: variables modificadas finales sólo se pueden asignar una vez, error de asignación duplicado. modificación final del objeto no puede ser modificado, pero el valor de las variables de objeto puede ser modificado. El último método modificado puede ser heredada por las subclases, pero no puede ser modificado por subclases. La última clase modificado no puede ser heredada.

abstracto modificador: uso modificado clase abstracta es una clase abstracta, no puede crear una instancia de un objeto, una clase no se puede modificar mediante la final y abstracta, porque la clase modificada final no puede ser heredada, pero la clase abstracta sólo puede herede ser instanciada, para ser útil. Dos están en conflicto.

Una clase abstracta puede contener un métodos no abstractos y métodos abstractos. Sin embargo, la clase abstracta contiene un método, debe ser una clase abstracta. Debido a que el método no es anulado resumen de no uso, no es de entidad. aplicación concreta del método abstracto proporcionado por las subclases

 

modificador sincronizado: modificado método que se sincroniza al mismo tiempo sólo puede haber un acceso hilo.

El modificador volátil: volátil variable miembro modificado se accede cada vez que el hilo se valor de la variable de la memoria vuelva a leer. Cuando una variable miembro de cambios, las fuerzas del cambio en el valor de la parte posterior por escrito a la memoria, por lo que todos los hilos ver las variables tienen el mismo valor.

El modificador final no se puede utilizar antes volátil, porque las variables modificadas finales no pueden ser modificados.

variable de método parámetros java: en el proceso de tener un parámetro de longitud variable puede ser utilizado como una matriz. El método de parámetros fijos y cómo hacer coincidir la llamada emitida, es posible juego y de longitud variable, el método de prioridad fija y parámetros coinciden. parámetro de longitud variable de los parámetros del método en la superficie final, porque si un frontal ampliada, no saben cuando el parámetro correspondiente es fijo. Cada método puede tener un parámetro de longitud variable, el parámetro es consistente con el método de longitud variable en la superficie final.

public static void main(String[] args) {
        VarArgsTest1 test = new VarArgsTest1();
        test.print("hello");
        test.print("hello", null);
    }

No deje que la amenaza de un valor nulo a la longitud variable de parámetros, no ocultan tipos de argumentos

 public static void main(String[] args) {
        VarArgsTest1 test = new VarArgsTest1();
        String[] strs = null;
        test.print("hello", strs);
    }

 

 

 

Publicado 15 artículos originales · ganado elogios 0 · Vistas 1078

Supongo que te gusta

Origin blog.csdn.net/ma316110/article/details/80250938
Recomendado
Clasificación