Certificación java 6 cap 1
Upcoming SlideShare
Loading in...5
×
 

Certificación java 6 cap 1

on

  • 1,498 views

Capítulo 1 – Declaraciones y Control de acceso - SCJP Sun Certified Programmer for Java 6 Exam 310-065

Capítulo 1 – Declaraciones y Control de acceso - SCJP Sun Certified Programmer for Java 6 Exam 310-065

Statistics

Views

Total Views
1,498
Views on SlideShare
1,451
Embed Views
47

Actions

Likes
0
Downloads
58
Comments
0

5 Embeds 47

http://certificandomeenjava.blogspot.com 30
http://certificandomeenjava.blogspot.mx 14
http://www.google.cl 1
http://certificandomeenjava.blogspot.fr 1
http://certificandomeenjava.blogspot.com.ar 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Certificación java 6 cap 1 Certificación java 6 cap 1 Presentation Transcript

  • Realizado por: Raúl Ernesto TriviñoAlvarado CERTIFICACIÓN JAVA 6 Capítulo 1 – Declaraciones y Control de acceso
  • Identificadores y java BeansCubre los objetivos 1.3 y 1.41.3 Develop code that declares, initializes, and uses primitives, arrays, enums, and objects as static, instance,and local variables. Also, use legal identifiers for variable names.1.4 Develop code that declares both static and non-static methods, and—if appropriate— use method namesthat adhere to the JavaBeans naming standards. Also develop code thatdeclares and uses a variable-lengthargument list. Capítulo 1 – Declaraciones y Control de acceso
  • Identificadores y java Beans Reglas de declarar variables  Las variables debe inicializar con una letra, un signo de pesos, o un símbolo de conexión como una línea al piso (_). No se inicializa con números.  El resto de las variables pueden tener letras, números, símbolo de pesos, y símbolos de conexión.  El nombre de las variables no tienen límites.  Las variables diferencian mayúsculas y minúsculas. Capítulo 1 – Declaraciones y Control de acceso
  • Identificadores y java BeansVariables legales Variables ilegalesint _a; int :b;int $c; int -d;int ______2_w; int e#;int _$; int .f;int int 7g;this_is_a_very_detailed_name_for_an_identifier; Capítulo 1 – Declaraciones y Control de acceso
  • Identificadores y java Beans  Listado de palabras reservadas en java Capítulo 1 – Declaraciones y Control de acceso
  • Identificadores y java Beans Convenciones de código en java  Clases e interfaces:  La primera letra debe ser mayúscula, las clases deben ser sustantivos y las interfaces adjetivos  Los métodos  Tienen la primera letra en minúscula, y la siguiente palabra empieza en mayúscula, deben denotar una acción  Las variables  Tienen la primera letra en minúscula, y la siguiente palabra empieza en mayúscula, deben denotar un sustantivo  Constantes  Debe ser totalmente en mayúsculas y separadas por línea al piso Capítulo 1 – Declaraciones y Control de acceso
  • Identificadores y java Beans Estándar JavaBeans  Definición para llamar los métodos estándar de las clases  Si la propiedad no es boolean entonces los métodos getter deben ser getNombreVariable().  Si es un boolean entonces no se usa get si no is, por ejemplo isVariableBoolean().  Los setters deben ser en todos los casos con setNombreVariable(). Capítulo 1 – Declaraciones y Control de acceso
  • Declaración de clasesCubre el objetivo 1.1 1.1 Develop code that declares classes (including abstract and all forms of nested classes),interfaces, and enums, and includes the appropriate use of package and import statements (including static imports). Capítulo 1 – Declaraciones y Control de acceso
  • Declaración de clases Solo debe haber una clase pública en un archivo .java, aunque si pueden declararse varias clases en un archivo. El nombre del archivo .java debe ser del mismo nombre de la clase pública. Las clases deben empezar con la sentencia package, debe ir antes de las sentencias import. En caso que se haga lo contrario aparecerá error de compilación. Las sentencias import y package aplican para todas las clases del archivo, no existe forma que dos clases que estén en el mismo archivo pertenezcan a paquetes diferentes. No pueden haber clases Control de acceso no publicas con el Capítulo 1 – Declaraciones y publicas y mismo nombre.
  • Declaración de clases Declaración de clases y modificadores  Al momento de declarar una clase se deben tener en cuenta dos aspectos:  Modificadores de acceso: Una clase puede ser privada, pública o protegida  Modificadores adicionales: Una clase además puede ser strictfp, final o abstract. Capítulo 1 – Declaraciones y Control de acceso
  • Declaración de clases Acceso de las clases:  El comportamiento de una clase depende de la forma como se declare, en este aspecto entonces podemos decir que por ejemplo al momento de crear una clase A, esta sea diferente al:  Que la clase A sea una instancia de la interface B (Polifomismo)  Que la clase A herede de la clase B (Herencia)  Que la clase A tenga un modificador de acceso, dependiendo de esto B puede acceder a esta o no. Capítulo 1 – Declaraciones y Control de acceso
  • Declaración de clases Acceso de las clases – Acceso por defecto  Son las clases que no llevan ningún modificador al momento de declararlas.  Estas clases solo pueden ser vistas por otras clases del mismo paquete. package exam.stuff; package cert; import cert.Beverage; class Beverage { } class Tea extends Beverage { } Compilan?, Arroja error en ejecución? Capítulo 1 – Declaraciones y Control de acceso
  • Declaración de clases Acceso de las clases – Acceso público  Este acceso hace que la clase pueda ser vista por todas las clases de java. No interesa si esta en otro paquete o librería. Acceso de las clases – Acceso privado  Caso contrarío al anterior, no permite que ninguna otra clase la pueda ver ni acceder, así esté en el mismo paquete, o inclusive en el mismo archivo. Capítulo 1 – Declaraciones y Control de acceso
  • Declaración de clases Modificadores adicionales – Final  Una clase marcada con final, no permite que la clase tenga hijos en el caso de la herencia  Se hace para garantizar la seguridad de los métodos y las clases, y para obligar que los métodos no puedan ser sobreescritos. Capítulo 1 – Declaraciones y Control de acceso
  • Declaración de clases Declaración de clases – Clase abstracta  Una clase abstracta nunca podrá ser instanciada, en caso que se haga entonces arrojará un error en tiempo de ejecución así compile.  Una clase abstracta se debe implementar siempre y cuando tenga un método abstracto, este deberá implementarse obligatoriamente por las clases que heredan de esta clase.  Una clase abstracta difiere de una interface porque esta puede tener métodos implementados y métodos abstractos.  ¿Una clase abstracta puede existir sin tener métodos abstractos? ¿Puede existir una clase que sea final y abstracta? 1 – Declaraciones y Control de acceso Capítulo
  • Declaración de interfacesCubre los objetivos 1.1 y 1.21.1 Develop code that declares classes (including abstract and all forms of nested classes), interfaces, andenums, and includes the appropriate use of package and import statements (including static imports).1.2 Develop code that declares an interface. Develop code that implements or extends one or more interfaces.Develop code that declares an abstract class. Develop code that extends an abstract class. Capítulo 1 – Declaraciones y Control de acceso
  • Declaración de Interfaces Funcionamiento de una interface Capítulo 1 – Declaraciones y Control de acceso
  • Declaración de Interfaces Todos los métodos de las interfaces son implícitamente públicos y abstractos, por lo tanto no pueden existir métodos privados o más aún con implementación. Todas las variables son públicas, estáticas y finales, en otras palabras son constantes. Los métodos no pueden ser static, ni strictfp o native Una interface puede extender de una o varias interfaces. Una interface no puede extender de algo que no sea otra interface Una interface no puede implementar nada, ni clase ni interface. Una interface1debe ser declarada con la palabra Capítulo – Declaraciones y Control de acceso interface
  • Declaración de interfaces Estas dos declaraciones por lo tanto son iguales public abstract interface Rollable { } public interface Rollable { } Estas bounce(); public declaraciónes son válidas: void void bounce(); abstract void bounce(); public abstract void bounce(); abstract public void bounce(); Estasvoid bounce(); // final and abstract can never be used final no son válidas // together, and abstract is implied static void bounce(); // interfaces define instance methods private void bounce(); // interface methods are always public protected void bounce(); // (same as above) Capítulo 1 – Declaraciones y Control de acceso
  • Declaración de interfaces Declarando constantes de interfaces  Todas las variables de una interface son constantes, por lo tanto estas serán implícitamente declaradas como public static final.  No es necesario declararlas explícitamente, sin embargo si se llegan a declarar así no existe problema se puede hacer sin problema.  Por lo tanto no pueden existir variables de tipo private.  Las variables al ser constantes deben tener un valor de inicialización, y su valor nunca podrá cambiar. Error de compilación Capítulo 1 – Declaraciones y Control de acceso
  • Declarando miembros de unaclaseResponde a los objetivos 1.3 y 1.41.3 Develop code that declares, initializes, and uses primitives, arrays, enums,and objects as static, instance, and local variables. Also, use legal identifiers forvariable names.1.4 Develop code that declares both static and non-static methods, and—ifappropriate—use method names that adhere to the JavaBeans namingstandards. Also develop code that declares and uses a variable-length argumentlist. Capítulo 1 – Declaraciones y Control de acceso
  • Declarando los miembros de unaclase Modificadores de acceso  Los modificadores de acceso de una clase pueden ser de 4 niveles: public, protected, default, y private.  El nivel de acceso de cada uno de estos se puede resumir en la siguiente tabla: Capítulo 1 – Declaraciones y Control de acceso
  • Declarando los miembros de unaclase Modificadores de no acceso  Acceso final en métodos  Un método final no puede ser sobreescrito por parte de una clase hijo.  Es una forma de garantizar la seguridad de los métodos en la herencia. Compila bien pero arroja error al momento de Capítulo 1 – Declaraciones y Control de acceso correrlo
  • Declarando los miembros de unaclase Modificadores de no acceso  Acceso final en argumentos  Si en la lista de argumentos aparece una variable marcada como final significa que el valor de esta variable no puede cambiar en el método como tal.  Acceso abstract en métodos  Los abstract son métodos que no tienen implementación, la clase de estos métodos tiene que marcarse como abstract tambien. Por lo tanto pueden haber clases abstract sin métodos abstract, pero no al contrario. Error de compilación Capítulo 1 – Declaraciones y Control de acceso
  • Declarando los miembros de unaclase Modificadores de no acceso  Acceso abstract en métodos  Los métodos abstractos por su naturaleza jamás deben mezclarse con modificadores como private o final, pues es necesario queque sea heredados para implementarse, ni con ytipos de accesopues arroja error de Capítulo 1 – Declaraciones Control static compilación.
  • Declarando los miembros de unaclase Métodos sincronized  Indican que este método solo puede ser accedido por un hilo a la vez.  Este modificador solo puede ser aplicado a métodos, no a clases o variables. Métodos Native  Sólo puede asignarse a métodos.  Indica que el método está escrito en un lenguaje dependiente de la plataforma, habitualmente en C.  Cuando usemos un método nativo, sólo incluiremos la cabecera del método con el modificador native y terminado en punto y coma (;) (como si fuera un método abstracto)  Se necesitan por tanto los ficheros .h y .c correspondientes que serán los que contengan el código fuente del método nativo. Capítulo 1 – Declaraciones y Control de acceso
  • Declarando los miembros de unaclase Métodos Strictfp  Es un modificador que se puede usar como modificador de clase y/o modificador de métodos. Pero nunca como modificador de instancias o variables.  Cuando colocamos el modificador strictfp delante de una clase o delante de un método, estamos indicando que nuestra clase o método se rige por el estandar IEEE 754 para manejar números en coma flotante y para realizar operaciones de coma flotante.  De esta forma se puede suponer cómo van a comportarse las operaciones en punto flotante sin importar la arquitectura de la JVM que se encuentre por debajo.  La desventaja es que si la arquitectura que tenemos por debajo soporta una precisión mayor, los métodos strictfp no harán uso de toda esa potencia y capacidad. Capítulo 1 – Declaraciones y Control de acceso
  • Declarando los miembros de unaclase Var-args  Los var-args solo existen en la declaración de los métodos,  Se declaran colocando el tipo de variable, seguido de tres puntos (…) y el nombre de la variable.  Cuando se declara un var-arg se pueden, implementar otros atributos, pero no varios var-args.  Los var-args deben declararse como el último atributo de los que recibe el método Var-args legales Var-args ilegales Capítulo 1 – Declaraciones y Control de acceso
  • Declarando los miembros de una clase  Declaración de constructores  Los constructores nunca pueden retornar un atributo.  Deben tener el mismo nombre del atributo  Pueden ser public, o private pero no pueden ser static, final o abstract Constructores ilegalesConstructores Legales Capítulo 1 – Declaraciones y Control de acceso
  • Declaración de variables Existen dos tipos de variables en java: Primitivas y de referencia. Variables primitivas Adicionalmente a esto existen las variables booleanas que solo pueden ser true o false Capítulo 1 – Declaraciones y Control de acceso
  • Declaración de variables Declaración de variables de referencia  Las variables de referencia pueden ser declaradas como static, de instancia, de métodos, o locales.  Se pueden declarar uno o más variables del mismo tipo, en la misma linea. Variables de instancia  Están declaradas dentro de la clase pero fuera de cualquier método  Pueden ser declaradas con cualquiera de los 4 tipos de acceso (default, private, public y protected) Capítulo 1 – Declaraciones y Control de acceso
  • Declaración de variables Variables de instancia  Pueden ser marcadas como final, transient, abstract, syncronized, strictfp, native, o static. Capítulo 1 – Declaraciones y Control de acceso
  • Declaración de variables Variables locales  Son variables que están declaradas dentro de los métodos  Por lo tanto el nivel de alcance de esta variable es solo a nivel del método, si se llama desde un punto fuera de este, entonces arroja error de compilación.  Esta variable es necesaria inicializarla antes de usarla.  Las variables locales no pueden ser public, transient, volatile, abstract, o static, pero si pueden ser final.  Shadowing: Es cuando una variable local se llama igual que una variable de instancia, existen riesgos a que el sistema no logre identificar cual variable se refiereCapítulo 1 – Declaraciones esto existe la sentencia this. el sistema, por y Control de acceso
  • Declaración de variables Declaración de arrays  Los arrays se pueden declarar así:Arrays construidos legalmente Arrays construidos ilegalmente Variables final  Una variable final no permite reasignar el valor de la variable una vez se a asignado. Capítulo 1 – Declaraciones y Control de acceso
  • Declaración de variablesComportamiento de Comportamiento de un Comportamiento de una clase final método final una variable final Capítulo 1 – Declaraciones y Control de acceso
  • Declaración de variables Variables trasient  Las variables trasient indican que no se tendrán en cuenta al momento de serializar y deserializar la clase. Variables volatile  Indica que para esta variable un hilo deberá comparar su copia privada con la copia maestra almacenada en memoria. Capítulo 1 – Declaraciones y Control de acceso
  • Declaración de variables Variables y métodos static  Cuando uno marca algo en static significa que en tiempo de ejecución corre antes de crearse la instancia de la clase y solo se ejecuta una sola vez. Estos bloques corren antes del constructor.  El nivel de static se puede aplicar a métodos, variables, clases internas, y bloques.  No pueden ser static constructores, clases externas, interfaces, métodos locales de las clases internas, variables locales, y variables locales Capítulo 1 – Declaraciones y Control de acceso
  • Declaración de variables Declaración de enums  Enum es una variable que corresponde a una lista enumerada de valores constantes. Se declara así  Estos no pueden ser declarados como private o protected.  Los enums son considerados como clases apartes, si va dentro de una clase sería como una clase interna, por lo tanto no puede declararse un enum dentro de un método Capítulo 1 – Declaraciones y Control de acceso
  • Declaración de variables Declaración de enums Capítulo 1 – Declaraciones y Control de acceso
  • Declaración de variables Declaración de constructores, métodos y variables en un enum  Como los enums son una especia de clase, entonces pues pueden tener constructores, métodos y variables  Constructores:  Nunca se puede invocar directamente un constructor de un enum, este se invoca automáticamente cuando se definen los valores  Pueden haber constructores con uno o más atributos, y pueden sobrescribirse los constructores Capítulo 1 – Declaraciones y Control de acceso
  • Declaración de variables Capítulo 1 – Declaraciones y Control de acceso
  • Preguntas de práctica Capítulo 1 – Declaraciones y Control de acceso
  • Pregunta 1Which is true? (Choose all that apply.) A. "X extends Y" is correct if and only if X is a class and Y is an interface B. "X extends Y" is correct if and only if X is an interface and Y is a class C. "X extends Y" is correct if X and Y are either both classes or both interfaces D. "X extends Y" is correct for all combinations of X and Y being classes and/or interfaces Capítulo 1 – Declaraciones y Control de acceso
  • Respuesta 1 A es incorrecta porque las clases implementan interfaces no extienden de ellas. B es incorrecta porque las interfaces solo heredan de otras interfaces C es la correcta. La D es incorrecta por las razones ya vista. Esta pregunta cubre el objetivo 1.2 Capítulo 1 – Declaraciones y Control de acceso
  • Respuesta 2Which method names follow the JavaBeans standard? (Choose all that apply.) A. addSize B. getCust C. deleteRep D. isColorado E. putDimensions Capítulo 1 – Declaraciones y Control de acceso
  • Respuesta 2 A es incorrecta porque la sentencia add solo se usa con los métodos listener B es correcta porque usa get C es incorrecta porque delete no esta dentro del estándar D es correcta porque usa is, is se usa para variables booleanas E es incorrecta porque put no esta dentro del estándar Capítulo 1 – Declaraciones y Control de acceso Esta pregunta cubre el objetivo 1.4
  • Pregunta 3 1. class Voop { 2. public static void main(String [] args) { 3. doStuff(1); 4. doStuff(1,2); 5. } 6. // insert code here 7. }Which, inserted independently at line 6, will compile? (Choose all that apply.) A. static void doStuff(int... doArgs) { } B. static void doStuff(int[] doArgs) { } C. static void doStuff(int doArgs...) { } D. static void doStuff(int... doArgs, int y) { } E. static void doStuff(int x, int... doArgs) { } Capítulo 1 – Declaraciones y Control de acceso
  • Respuesta 3 A es correcta, pues cumple la sintaxis de los vararg B es incorrecta, un array es un objeto, no sirve para llenarse como lo hace el código C es incorrecta, esta mal declarado el vararg D es incorrecta porque el vararg debe ser el último atributo de los argumentos del método E es correcta, se pueden tener varios vararg en una lista de argumentos del método Esta pregunta cubre el objetivo 1.4 Capítulo 1 – Declaraciones y Control de acceso
  • Pregunta 4 1. enum Animals { 2. DOG("woof"), CAT("meow"), FISH("burble"); 3. String sound; 4. Animals(String s) { sound = s; } 5. } 6. class TestEnum { 7. static Animals a; 8. public static void main(String[] args) { 9. System.out.println(a.DOG.sound + " " + a.FISH.sound); 10. } 11. }What is the result? A. woof burble B. Multiple compilation errors C. Compilation fails due to an error on line 2 D. Compilation fails due to an error on line 3 E. Compilation fails due to an error on line 4 F. Compilation fails due to an error on line 9 Capítulo 1 – Declaraciones y Control de acceso
  • Respuesta 4 A es correcta, los enums pueden tener constructores, y métodos, además se pueden instanciar como static B es incorrecta, no se presentan errores de compilación C es incorrecta, así se crean la elaboración de los atributos del enum, además la sentencia termina con ; D es incorrecta, los enums pueden tener variables locales E es incorrecta, los enums pueden tener constuctores F es incorrecta, una clase main puede acceder a enum a través de una instancia estática. Capítulo 1 – Declaraciones y Control de acceso Esta pregunta cubre el objetivo 1.3
  • Pregunta 5 1. package pkgA; 2. public class Foo { 3. int a = 5; 4. protected int b = 6; 5. public int c = 7; 6. } 3. package pkgB; 4. import pkgA.*; 5. public class Baz { 6. public static void main(String[] args) { 7. Foo f = new Foo(); 8. System.out.print(" " + f.a); 9. System.out.print(" " + f.b); 10. System.out.println(" " + f.c); 11. } 12. }What is the result? (Choose all that apply.) A. 5 6 7 B. 5 followed by an exception C. Compilation fails with an error on line 7 D. Compilation fails with an error on line 8 E. Compilation fails with an error on line 9 F. Compilation fails with an error on line 10 Capítulo 1 – Declaraciones y Control de acceso
  • Respuesta 5 A es incorrecta, la aplicación no compila. B es incorrecta, pues la aplicación arroja errores de compilación y no de ejecución. C es incorrecta, la clase Foo es pública por lo tanto puede ser vista por cualquier otra clase. D es correcta, las clases con acceso por defecto no pueden ser vistas por clases de otros paquetes, arroja error de compilación. E es correcta, las clases con acceso protected solo pueden ser vistas por clases externas pero solo por sus hijas, error de compilación F es incorrecta, las variables públicas se pueden ver por cualquier otra clase Esta pregunta cubre el objetivo 1.1 Capítulo 1 – Declaraciones y Control de acceso
  • Pregunta 6 1. public class Electronic implements Device { public void doIt() { } } 2. 3. abstract class Phone1 extends Electronic { } 4. 5. abstract class Phone2 extends Electronic { public void doIt(int x) { } } 6. 7. class Phone3 extends Electronic implements Device { public void doStuff() { } } 8. 9. interface Device { public void doIt(); }What is the result? (Choose all that apply.) A. Compilation succeeds B. Compilation fails with an error on line 1 C. Compilation fails with an error on line 3 D. Compilation fails with an error on line 5 E. Compilation fails with an error on line 7 F. Compilation fails with an error on line 9 Capítulo 1 – Declaraciones y Control de acceso
  • Respuesta 6 A es correcta, las clases y las interfaces estan correctamente implementadas. B es incorrecta, una clase puede implementar una interface sin ningún problema. C es incorrecta, una clase abstracta puede existir sin métodos abstractos, además la clase padre implementó el método de la interface D es incorrecta, una clase abstracta puede sobrescribir un método como una clase normal. E es incorrecta, una clase puede heredar de una clase e implementar una interface al mismo tiempo, además el método de la interface lo implementó la clase padre. F es incorrecta, la interface esta correctamente implementada Esta pregunta cubre el objetivo 1.2 Capítulo 1 – Declaraciones y Control de acceso
  • Pregunta 7 4. class Announce { 5. public static void main(String[] args) { 6. for(int __x = 0; __x < 3; __x++) ; 7. int #lb = 7; 8. long [] x [5]; 9. Boolean []ba[]; 10. enum Traffic { RED, YELLOW, GREEN }; 11. } 12. }What is the result? (Choose all that apply.) A. Compilation succeeds B. Compilation fails with an error on line 6 C. Compilation fails with an error on line 7 D. Compilation fails with an error on line 8 E. Compilation fails with an error on line 9 F. Compilation fails with an error on line 10 Capítulo 1 – Declaraciones y Control de acceso
  • Respuesta 7 A es incorrecta, el código no compila correctamente B es incorrecta, una variable puede empezar con línea al piso _ C es correcta, una variable no puede empezar con simbolo #, solo se vale letras, simbolo pesos ($), o línea al piso (_) D es correcta, un array no puede declararse con el tamaño, debería ser long [] x []; E es incorrecta, por el mismo motivo del punto anterior F es correcta, un enum no puede declararse dentro de un método. Esta pregunta cubre el objetivo 1.3 Capítulo 1 – Declaraciones y Control de acceso
  • Pregunta 8 3. public class TestDays { 4. public enum Days { MON, TUE, WED }; 5. public static void main(String[] args) { 6. for(Days d : Days.values() ) 7. ; 8. Days [] d2 = Days.values(); 9. System.out.println(d2[2]); 10. } 11. }What is the result? (Choose all that apply.) A. TUE B. WED C. The output is unpredictable D. Compilation fails due to an error on line 4 E. Compilation fails due to an error on line 6 F. Compilation fails due to an error on line 8 G. Compilation fails due to an error on line 9 Capítulo 1 – Declaraciones y Control de acceso
  • Respuesta 8 A es incorrecta, pues las posiciones en los arreglos empiezan desde 0 B es correcta, pues es la variable que corresponde a la posicion 2 del array. C es incorrecta, la salida si se puede predecir D es incorrecta, el enum esta correctamente declarado E es incorrecto, este es un for simplificado F es incorrecto, el método values del enum, retorna un arreglo de valores G es incorrecto, se puede obtener de esta forma un valor de un array Esta pregunta cubre el objetivo 1.3 Capítulo 1 – Declaraciones y Control de acceso
  • Pregunta 9 4. public class Frodo extends Hobbit { 5. public static void main(String[] args) { 6. Short myGold = 7; 7. System.out.println(countGold(myGold, 6)); 8. } 9. } 10. class Hobbit { 11. int countGold(int x, int y) { return x + y; } 12. }What is the result? A. 13 B. Compilation fails due to multiple errors C. Compilation fails due to an error on line 6 D. Compilation fails due to an error on line 7 E. Compilation fails due to an error on line 11 Capítulo 1 – Declaraciones y Control de acceso
  • Respuesta 9 A es incorrecta, el código no compila bien y jamás da 13 B es incorrecta, solo presenta un error de compilación. C es incorrecta, el valor está dentro del rango de respuestas. D es correcta, no se puede llamar un método no estático en un método estático. E es incorrecta, el método esta correctamente implementado Esta pregunta cubre el objetivo 1.4 Capítulo 1 – Declaraciones y Control de acceso