Con la tecnología de Blogger.

Una clase con funciones estáticas

El propósito de este capítulo es definir un conjunto de funciones estáticas dentro de una clase denominada Matemáticas. Al definir el concepto de clase estudiamos las funciones miembro o métodos. 

En esta página, vamos a ver cómo se define una función para realizar una determinada tarea.

Se deberá tener en cuenta que no se puede usar una variable de instancia por una función estática.

Por ejemplo:

class UnaClase{
int i=0;
static void funcion(){
System.out.println(i);
}
//otras funciones miembro
}
Al compilar se produce un error ya que la variable i es de instancia y no se puede usar en un contexto estático. El lector puede probar esto con cualquier clase que describe una aplicación. Declara una variable de instancia en la clase y la trata de usar en la función estática main.

package mates;
public class Matematicas {
static long factorial(int num){
long resultado=1;
while(num>0){
resultado*=num;
num--;
}
return resultado;
}
static long potencia(int base, int exponente){
long resultado=1;
for(int i=0; i<exponente; i++){
resultado*=base;
}
return resultado;
}
static boolean esPrimo(int numero){
if((numero!=2)&&(numero%2==0)) return false;
for(int i=3; i<numero/2; i+=2){
if(numero%i==0){
return false;
}
}
return true;
}
static double absoluto(double x){
if(x<0) return -x;
return x;
}
static int absoluto(int x){
if(x<0) return -x;
return x;
}
}
package mates;
public class MatesApp {
public static void main(String[] args) {
//Número combinatorio de m sobre n
int m=8, n=3;
System.out.print("El número combinatorio "+m +" sobre "+ n);
long numerador=Matematicas.factorial(m);
long denominador=Matematicas.factorial(m-n)*Matematicas.factorial(n);
Share on Google Plus

Sobre Rafa

Soy un apasionado de las nuevas técnologias, Internet, los videojuegos, la cultura japonesa y de USA.
    Blogger Comment
    Facebook Comment

0 comentarios:

Publicar un comentario

Gracias por comentar ;-)