Beruflich Dokumente
Kultur Dokumente
APUNTEN1JAVA
TIPOSDEDATOS
LostiposdedatosenJavaseclasificanen: Tipos primitivos: Estn integrados en el sistema y en realidad NO son objetos. Hay 8 tipos primitivos,clasificadosentiposnumricos(enterosyreales)ytipobolean. Tiposreferenciados:Hay3tiposdedatosreferenciadosystossonclases,interfacesyarrays.
Tipos Primitivos
TiposEnteros
byte:esunconjuntode8bits,seutilizaparaenteroscomprendidosentre128y127 short:esundatode16bitsdelongitud.Seusaparaenteroscuyovalormnimoes32.767y valormximo32.767 int: es un dato de 32 bits de longitud. Su valor mnimo es 2.147.483.648 y el mximo 2.147.483.647 long:esundatode64bitsdelongitud.Susvaloresmnimosymximosson 9.223.372.036.854.775.808y9.223.372.036.854.775.807 char:esutilizadoparadeclararenterosenelrango\u0000a\uFFFFenUnicode(0a65535).Los valores0a127correspondenconloscaracteresdelcdigoASCII.EnJavapararepresentarlos caracteres se utiliza el cdigo Unicode, que es un cdigo de 16 bits (2 bytes), con el nico propsitodeinternacionalizarellenguaje.
TiposReales
float:seutilizaparadeclararundatoencomaflotantede32bitsenelformatoIEEE754(1bit para el signo, 8 para el exponente y 24 para la mantisa). Almacena valores con una precisin aproximada de 7 dgitos (decimales). Su rango es de 3.402823E38 a 1.401298E45 y de 1.401298E45a3.402823E38. Paraespecificarunvalorconstantedetipofloat,esrequisitoescribiralfinaldesu valor,laletraFof.Porejemplo3.1415F
TALLER DE PROGRAMACIN I Primavera2009,InacapValparaso double:seutilizaparadeclararundatoencomaflotantede64bits(1paraelsigno,11bitspara elexponentey52paralamantisa).Almacenavaloresconprecisinaproximadade16dgitos.El rango de los datos tipo double es de 1.79769313486232E308 a 4.9406564584124E324 y de 4.9406564584124E324a1.79769313486232E308
Tipoboolean
Seutilizaparaindicarsielresultadodelaevaluacinesverdaderoofalso.Laspalabrastrueyfalse,son palabrasclavesenellenguajeJava.
IDENTIFICADORES
Correspondealnombrequeseledaaunavariable,aunobjeto,aunmtodo,aunaclase,etc. Son caracteres vlidos para un identificador: letras, dgitos, smbolo de subrayado y signo $. Puede comenzarconletra,smbolodesubrayadoosigno$. Lasletraspuedenserenmaysculaominscula,siendodistintaslasmaysculasdelasminsculas. No puede ser utilizado como identificador una palabra clave, pues stas son identificadores predeterminadosquetienenunsignificadoespecialparaelcompiladordeJava. PalabrasClavesson: abstract boolean Break Byte Case Catch Char Class Const continue default do double else extends final finally float for goto if implements import instanceof int interface long native new package private protected public return short static super switch synchronized this throw throws transient try void volatile while
COMENTARIOS
Loscomentarioscorrespondenainstruccionesnoejecutables.EnJavasepuedenrealizarde2formas: /*textodecomentario*/ //textodecomentario ALusar/**/,sepuedecomentarunaomslneas,sinembargoalusar//elcomentarioesporlnea. Adems,existeelcomentariodedocumentacin,quepermitegenerarun documentode texto conlo escritodentrodelossmbolos.Estoes: /**texto*/
DECLARACINDEVARIABLES
Unavariablerepresentaunespaciodememoriaparaalmacenarunvalordeundeterminadotipo. Una variable puede ser de tipo primitivo o de tipo referenciado. Desde el punto de vista del papel o misinenelprograma,lasvariablespuedenser:
Variablesmiembrodeunaclase Variableslocales.
Las variables miembros de la clase, son aquellas que se declaran dentro de una clase, pero fuera de cualquierotrobloque.Tambinrecibenelnombredeatributosdelaclase.Estaspuedenseraccedidas desdetodoslosmtodosdelaclasequenoseanstatic. Lasvariableslocales,sonaquellasquesedeclarandentrodeunmtodoodentrodecualquierbloque (enunbloquedeinstruccionesqueestndentrode{},enuncicloforantesdelnombredelavariable que lo controla, al especificar su valor inicial). Una variable local puede ser de tipo primitivo o referenciada,peroNOpuedeserdetipostatic.Almomentodedeclararunavariablelocalsecrea(sele asignaunadireccindememoriaenlaRAM)ysedestruye(seliberaelespaciodememoriaasignado)al finalizarelmtodo,cicloobloqueenelquefuedeclarada. Lasvariablesmiembrosdeunaclase,soninicializadasporelcompiladorJavaparacadaobjetoquese declaredelamisma.(Lasnumricasen0,loscaracterescon\0,lasreferenciadasyStringennull) Lasvariableslocalesdebenserinicializadasantesdeserutilizadas. Elformatogeneralparadeclararunavariablees:tipoidentificador;
OPERADORES
Aritmticos
Operador + * / % Operacin Sumaoperandosrealesoenteros Restaoperandosenterosoreales Multiplicaoperandosenterosoreales Divideoperandosenterosoreales Obtieneelrestodeuncuocienteentero,entreoperandosenteros
Lgicos
Operador && || ! Operacin Y O No
Relacionales
Operador > >= < <= == != Operacin Mayorque Mayoroigualque Menorque Menoroigualque Igual Distinto
= ++
ESTRUCTURASDECONTROL
SentenciaIFELSE
if(condicin) { Instruccionesqueserealizansilacondicinesverdadera } else { Instruccionesqueseejecutansilacondicinesfalsa }
SentenciaSWITCH
switch(expresin) { casevalor1:instrucciones; break; ... casevalork:instrucciones; break; default: instrucciones }
SentenciaWHILE
while(condicin) { Instrucciones; }
SentenciaFOR
for(variable=valor_inicial;condicin;aumento/disminucin) { instrucciones; }
SentenciaDOWHILE
do { Instrucciones; }while(condicin);
SentenciaBREAK
Alutilizarlasentenciabreakdentrodeunciclo,finalizalaejecucindeste. Ejemplo: Cuandoencuentreundgitoparenlavariablenum,damensajeysaledelciclo. while(num!=0)
{ } if((num%10)%2==0) { System.out.println(Elnumeroposeeundgitopar); break; } num/=10;
SentenciaCONTINUE
Obligaaejecutarlasiguienteiteracindelcicloenelqueestcontenida. Ejemplo: Muestraelcontenidodelavariableienelrango1y200,siemprequenoseaunnmerodivisible por5.Enesecasolasentenciacontinueobligaaincrementarelvaloreni. for(inti=0;i<=200;i++)
{ } if(i%5==0)continue; System.out.println(i+);
DEFINICINDEUNACLASE
Unaclaseesuntipodefinidoporelusuarioquedescribelosatributosylosmtodosdelosobjetosque secrearnapartirdelamisma. Elnombredelarchivoquecontengaunaclasedebetenerelmismonombredesta,ysuextensindebe ser.java. Losatributosdefinenelestadodeundeterminadoobjetoylosmtodossonlasoperacionesquedefinen su comportamiento. Forman parte de estos mtodos los constructores, que permiten inicializar los atributos.Losatributosylosmtodossedenominanengeneral,miembrosdelaclase.
classNombre_clase { } cuerpodelaclase
Elcuerpodelaclaseengeneralconstademodificadoresdeacceso,atributosymtodos Losmodificadoresdeaccesoespecificanelmbitodeaccesibilidad.Estospuedenser: public: Un miembro declarado public, est accesible para cualquier otra clase o subclase que necesiteutilizarlo. private: Un miembro declarado private es accesible solamente por los mtodos de su propia clase.Estosignificaquenopuedeseraccedidoporlosmtodosdecualquierotraclase,incluidas lassubclases. protected: Un miembro declarado como protected se comporta exactamente igual que un private para los mtodos de cualquier otra clase, excepto para los mtodos de las clases del mismo paquete o de sus subclases, con independencia al que pertenezcan, en este caso se comportacomounmiembropublic.
Losatributosconstituyenlaestructurainternadelosobjetosdeunaclase.Paradeclararlosseutilizael formato:
[modificador_acceso]tipoidentificador;
Constructoresunmtodoespecialdeunaclase,elqueesllamadoalmomentoenquesecreaunobjeto delamisma.Sufuncinesiniciarlosatributosdesuclase.
Accesadoresunmtodoquepermiteretornarelvalorquecontienedeunatributo
tipogetNombreAtributo() { } returnatributo;
Mutadoresunmtodoquepermitemodificarelcontenidodeunatributo,unavezqueelobjetoyafue creado.
voidsetNombreAtributo(tipoargumento) { } atributo=argumento;
Mtodomain
Toda aplicacin Java tiene un mtodo main. ste es el punto de entrada de la aplicacin y tambin el puntodesalida.
publicstaticvoidmain(Stringargs[]) { } Cuerpodelmtodomain
CrearObjetosdeunaClase
Paracrearunobjetodeunaclasesedebeutilizareloperadornew.
nombre_objeto=newconstructor([listadeparmetros])
o
nombre_clasenombre_objeto=newconstructor([listadeparmetros]);
ComoAccederalosMiembrosdeunaClase
Paraaccederdesdeunmtododelaclaseaplicacinodecualquierotraclase,aunmiembrodedeun objeto,seutilizalasintaxis:
objeto.miembro
CONVENCIONESDECODIFICACIN
ParaescribircdigoenlenguajeJavaseutilizanlassiguientesconvenciones: Clases:losnombresdelasclasesdeberansersustantivosescritosenletrasminsculas,conlaprimera letradecadapalabraenmayscula.
ClassLibroContabilidad
Mtodos: los mtodos deberan ser verbos escritos en letras minsculas con la inicial en minscula. Dentro de cada nombre de mtodo, las palabras se separan mediante letras en mayscula. Conviene limitarelusodesignosdesubrayado.
cuadrarLibro()
Variables: deberan escribirse en minsculas, con la inicial en minscula. Las palabras se separan medianteletrasenmayscula.Convienelimitarelusodesignosdesubrayadoyevitarelusodelsigno$ porqueestecarctertieneunsignificadoespecialparaclasesinternas.
clienteActual
Elnombredelasvariablestienequeserexplicativoparaqueindiqueacualquierlectorelpropsitodesu uso. Trate de no usar nombres de un solo carcter salvo para variables temporales desechables. (por ejemplo,i,jykutilizadascomovariablesdecontroldebucles) Constantes: las constantes deben escribirse enteramente en maysculas y separando las palabras mediantesignosdesubrayado.
TOTAL_NOMINA CANTIDAD_MAXIMA IVA
Estructurasdecontrol:cuandolassentenciasformanpartedeunaestructuradecontroldeflujo,como eselcasodeifelseofor,esprecisoescribirlasconllaves({}),aunqueseansentenciassencillas.
Espacios:solodebecolocarseunasentenciaporlneayutilizarsangrasdedos ocuatroespaciospara facilitar la lectura del cdigo. El nmero de espacios puede variar en funcin de las convenciones de codificacinutilizadas. Comentarios: utilice comentarios para explicar los segmentos de cdigo que no resultan obvios. Debe utilizareldelimitador//paraloscomentariosnormalesymarcarlasseccionesdecomentariodegran tamao usando /* */ como delimitadores. Los comentarios de documentacin se delimitan mediante los caracteres /***/ y sirven a javadoc como texto de entrada para generar la documentacinHTMLdelcdigo.
PETICINDEVALORESALUSUARIO
Esnormalquelosprogramassolicitendatosalusuariopararealizarclculos.Enelsiguienteejemplose presentaunprogramaparaelclculodelvolumendeuncilindroenelquesepidenalusuariolosdatos delradioylaaltura.
/** *ProgramaenJavaquepidealusuariolosdatos *delradioylaalturadeuncilindroycalculasuvolumen */ importjava.util.Scanner; publicclassPedirDatos{ publicstaticvoidmain(Stringargs[]){ //elvalordelnmeroPI finaldoublePI=3.1415923536; doubleradio; doublealtura; Scannerteclado=newScanner(System.in); System.out.println(Introduzcalosdatosdelcilindro:); System.out.print(Radio:);
En la primera lnea marcada se declara un objeto de la clase Scanner. Ya veremos ms adelante el conceptodeobjetoycomoseutiliza.Demomento,piensequelavariabletecladovaaserunobjetoque nosvaapermitirleerlosdatosqueseescribenporelteclado.Enlasegundalneamarcada,cuandoel programalaejecutasequedaesperandoaqueelusuarioescribaalgoeneltecladoypulselateclade retorno. En ese momento convierte lo ledo en un valor del tipo double y lo guarda en la variable radio.Igualocurreconlaterceralneamarcadaparaleerunvalorparalaaltura.Siloquedeseaesleer otrotipodedatoshgalocomoseindicaenlasiguientetabla: Tipo byte short int long float double MtodoaInvocar teclado.nextByte() teclado.nextShort() teclado.nextInt() teclado.nextLong() teclado.nextFloat() teclado.nextDouble()