Izpitno vprašanje RAČ2PRA 1400

Iz MaFiRaWiki

GFDL Avtor tega članka je študent/ka Ivana.

Pripravil/a ga je pri predmetu Računalništvo 2 (FMF PRA).


Kljub temu ste vsi vabljeni k urejanju in popravkom, saj je bistvo wikija ravno v sodelovalnem delu.


Vprašanje

|Vpr. 1400| Kako v javi ustvarimo razrede?


Odgovor

Vemo, da se vsak Java program sestoji iz enega ali več razredov (class). Razred je zaključena celota, ki vsebuje podatke in metode, ki sestavljajo zaključeno celoto. Java program shranimo v datoteko s končnico .java. Nato program prevedemo s prevajalnikom javac. Prevedeni program se shrani v datoteko s končnico .class. Program pa poženemo z interpreterjem java.

  • Razred shranimo v datoteko z istim imenom, kot je ime razreda. V razredu deklaliramo spremenljivke, s katerimi bomo delali, konstruktorje in metode.
  • Pa si na preprostem primeru poglejmo Javin razred:

  1. /* S pomocjo rekurzije napisi metodo public static int potenca(int x, int n), ki
  2. izracuna n-to potenco
  3. */
  4.  
  5. // ime razeda je RekPotenca in je shranjen v datoteko "RekPotenca.java"
  6. public class RekPotenca {
  7.  
  8. // rekurziva metode "potenca", ki racuna potenco
  9. public static double potenca (int x, int n) {
  10.  
  11. // ce je eksponent enak 0, vrnemo 1
  12. if (n == 0) {
  13. return 1.0;
  14. }
  15. // ce je eksponent enak 1, vrnemo stevilo, na katerem racunamo potenco
  16. else if (n == 1) {
  17. return (double)x;
  18. }
  19. // ce je eksponent negativno stevilo
  20. else if (n < 0) {
  21. return 1/potenca(x,-n);
  22. }
  23. // eksponent je sodo stevilo
  24. else if(n % 2 == 0){
  25. double t = potenca(x, n/2);
  26. return (double)(t * t);
  27. }
  28. // eksponent je liho stevilo
  29. else{
  30. double t = potenca(x, n/2);
  31. return (double)(x * t * t);
  32. }
  33. }
  34.  
  35. // preverimo zgornjo metodo
  36. // oz izpisemo konkretne primere
  37. public static void main (String[] args) {
  38. System.out.println("2 na 5 je: " +potenca(2,5));
  39. System.out.println("3 na 5 je: " +potenca(3,5));
  40. System.out.println("Ce je eksponent negativno stevilo.");
  41. System.out.println("2 na -4 je: " +potenca(2,-4));
  42. System.out.println("3 na -5 je: " +potenca(3,-5));
  43. }
  44. }
Osebna orodja