Entre las facilidades proporcionadas por la clase System se encuentran los flujos de entrada estándar, salida estándar y salida de error; acceso a propiedades y variables de entorno definidas externamente; un medio para cargar archivos y bibliotecas; y un método de utilidad para copiar rápidamente una parte de una matriz. Extiende la clase Object.
Los campos:

  • copia de matriz vacía estática (fuente de objeto, int sourceStart, Object Target, int targetStart, int size): Copia una matriz. La matriz que se va a copiar se pasa a source, y el índice en el que comenzará la copia dentro de source se pasa en sourceStart. La matriz que recibirá la copia se pasa en el destino, y el índice en el que comenzará la copia dentro del destino se pasa en targetStart. El tamaño es la cantidad de elementos que se copian.

    Syntax: public static void arraycopy(Object source, 
    int sourceStart, Object Target, int targetStart, int size)
    Returns: NA.
    Exception: 
    IndexOutOfBoundsException - if copying would cause access of data 
    outside array bounds.
    ArrayStoreException - if an element in the source array could not 
    be stored into the target array because of a type mismatch.
    NullPointerException - if either source or target is null.
    

    import java.lang.*;

    import java.util.Arrays;

    class SystemDemo

    {

        public static void main(String args[])

        {

            int[] a = {1, 2, 3, 4, 5};

            int[] b = {6, 7, 8, 9, 10};

             

            System.arraycopy(a, 0, b, 2, 2);

             

            

            System.out.println(Arrays.toString(b));

             

        }

    }

    Producción:

    [6, 7, 1, 2, 10]
    
  • static String clearProperty (clave de cadena): Elimina la propiedad del sistema indicada por la clave especificada.

    Syntax: public static String clearProperty(String key)
    Returns: the previous string value 
    of the system property, or null if there was no property 
    with that key.
    Exception: 
    SecurityException - if a security manager exists and its 
    checkPropertyAccess method doesn't allow 
    access to the specified system property.
    NullPointerException - if key is null.
    IllegalArgumentException - if key is empty.
    
  • static String getProperty (clave de cadena): Obtiene la propiedad del sistema indicada por la clave especificada.

    Syntax: public static String getProperty(String key)
    Returns: the string value of the system 
    property, or null if there is no property with that key.
    Exception: 
    SecurityException - if a security manager exists and its 
    checkPropertyAccess method doesn't allow access to the 
    specified system property.
    NullPointerException - if key is null.
    IllegalArgumentException - if key is empty.
    
  • static String getProperty (String key, String def): Obtiene la propiedad del sistema indicada por la clave especificada.

    Syntax: public static String getProperty(String key, String def)
    Returns: the string value of the system property,
     or the default value if there is no property with that key.
    Exception: 
    SecurityException - if a security manager exists and its 
    checkPropertyAccess method doesn't allow access to the 
    specified system property.
    NullPointerException - if key is null.
    IllegalArgumentException - if key is empty.
    
  • static String setProperty (clave de cadena, valor de cadena): Establece la propiedad del sistema indicada por la clave especificada.

    Syntax: public static String setProperty(String key, String value)
    Returns: the previous value of the system 
    property, or null if it did not have one.
    Exception: 
    SecurityException - if a security manager exists and its checkPermission 
    method doesn't allow setting of the specified property.
    NullPointerException - if key or value is null.
    IllegalArgumentException - if key is empty.
    

    import java.lang.*;

    import static java.lang.System.clearProperty;

    import static java.lang.System.setProperty;

    import java.util.Arrays;

    class SystemDemo

    {

        public static void main(String args[])

        {

            

            System.out.println(System.getProperty("user.home"));

             

            

            clearProperty("user.home");

             

            System.out.println(System.getProperty("user.home"));

             

            

            setProperty("user.country", "US");

             

            

            System.out.println(System.getProperty("user.country"));

             

            

            

            System.out.println(System.getProperty("user.password",

                  "none of your business"));

        }

    }

    Producción:

    /Users/abhishekverma
    null
    US
    none of your business
    
  • consola de consola estática (): Devuelve el objeto de consola exclusivo asociado con la máquina virtual Java actual, si existe.

    Syntax: public static Console console()
    Returns: The system console, if any, otherwise null.
    Exception: NA
    

    import java.io.Console;

    import java.lang.*;

    import java.util.Currency;

    import java.util.Locale;

    class SystemDemo

    {

        public static void main(String args[]) throws NullPointerException

        {

             

            Console c = System.console();

            if(c != null)

            {

               Currency currency = Currency.getInstance(Locale.ITALY);

               c.printf(currency.getSymbol());

                c.flush();

            }

            else

                System.out.println("No console attached");

        }

    }

    Producción:

    No console attached
    
  • currentTimeMillis largo estático (): Devuelve la hora actual en milisegundos. Tenga en cuenta que, si bien la unidad de tiempo del valor de retorno es un milisegundo, la granularidad del valor depende del sistema operativo subyacente y puede ser mayor. Por ejemplo, muchos sistemas operativos miden el tiempo en unidades de decenas de milisegundos.

    Syntax: public static long currentTimeMillis()
    Returns: the difference, measured in milliseconds,
     between the current time and midnight, January 1, 1970 UTC.
    Exception: NA.
    
  • nanoTime largo estático (): Devuelve el valor actual de la fuente de tiempo de alta resolución de la máquina virtual Java en ejecución, en nanosegundos.

    Syntax: public static long nanoTime()
    Returns: the current value of the running Java
     Virtual Machine's high-resolution time source, in nanoseconds
    Exception: NA
    

    import java.lang.*;

    class SystemDemo

    {

        public static void main(String args[]) throws NullPointerException

        {

            System.out.println("difference between the "

                    + "current time and midnight,"

                    + " January 1, 1970 UTC is: "

                    System.currentTimeMillis());

            System.out.println("cuurent time in "

                    + "nano sec: "

                    System.nanoTime());

        }

    }

    Producción:

    difference between the current time 
    and midnight, January 1, 1970 UTC is: 
    1499520649545
    cuurent time in nano sec: 29976939759226
    
  • salida vacía estática (estado int): Termina la máquina virtual Java que se está ejecutando actualmente. El argumento sirve como código de estado; por convención, un código de estado distinto de cero indica una terminación anormal.
    Este método llama al método de salida en la clase Runtime. Este método nunca regresa normalmente.
    La llamada System.exit (n) es efectivamente equivalente a la llamada:
    Runtime.getRuntime (). Exit (n)

    Syntax: public static void exit(int status)
    Returns: NA
    Exception: 
    SecurityException - if a security manager exists and its 
    checkExit method doesn't allow exit with the specified status.
    

    import java.lang.*;

    class SystemDemo

    {

        public static void main(String args[]) throws NullPointerException

        {

            System.gc();

            System.out.println("Garbage collector executed ");

             

            System.out.println(System.getProperty("os.name"));

             

            System.exit(1);

             

            

            System.out.println("JVM terminated");

        }

    }

    Producción:

    Garbage collector executed 
    Mac OS X
    
  • vacío estático gc (): Ejecuta el recolector de basura. Llamar al método gc sugiere que la máquina virtual Java se esfuerza por reciclar los objetos no utilizados para que la memoria que ocupan actualmente esté disponible para su reutilización rápida. Cuando el control regresa de la llamada al método, la máquina virtual Java ha hecho un gran esfuerzo para recuperar espacio de todos los objetos descartados.

    Syntax: public static void gc()
    Returns: NA
    Exception: NA
    

    import java.lang.*;

    class SystemDemo

    {

        public static void main(String args[]) 

        {

            Runtime gfg = Runtime.getRuntime();

            long memory1, memory2;

            Integer integer[] = new Entero[1000];

      

            

            System.out.println("Total memory is: "

                               + gfg.totalMemory());

      

            

            memory1 = gfg.freeMemory();

            System.out.println("Initial free memory: "

                                          + memory1);

      

            

            System.gc();

      

            memory1 = gfg.freeMemory();

      

            System.out.println("Free memory after garbage "

                               + "collection: " + memory1);

      

            

            for (int i = 0; i < 1000; i++)

                integer[i] = new Integer(i);

      

            memory2 = gfg.freeMemory();

            System.out.println("Free memory after allocation: "

                               + memory2);

      

            System.out.println("Memeory used by allocation: " +

                                        (memory1 - memory2));

      

            

            for (int i = 0; i < 1000; i++)

                integer[i] = null;

      

            System.gc();

      

            memory2 = gfg.freeMemory();

            System.out.println("Free memeory after  "

                + "collecting discarded Integers: " + memory2);

        }

    }

    Producción:

    Total memory is: 128974848
    Initial free memory: 126929976
    Free memory after garbage collection: 128632160
    Free memory after allocation: 127950520
    Memeory used by allocation: 681640
    Free memeory after  collecting discarded Integers: 128643472
    
  • Mapa estático getenv (): Devuelve una vista de mapa de cadenas no modificable del entorno del sistema actual. El entorno es un mapeo dependiente del sistema de nombres a valores que se pasa de procesos padre a hijo.
    Si el sistema no admite variables de entorno, se devuelve un mapa vacío.

    Syntax: public static Map getenv()
    Returns: the environment as a map of variable names to values.
    Exception: 
    SecurityException - if a security manager exists and its 
    checkPermission method...
  • Deja una respuesta

    Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *