Codigo:
//Llamar a los constructores de la superclase.
package javaapplication63;
class a{
a(){
System.out.println("En el constructor de a...");
}
a (String s){
System.out.println("En el constructor String de a...");
System.out.println(s);
}
}
class b extends a{
b(String s){
super(s);
System.out.println("En el constructor String de b...");
System.out.println(s);
}
}
public class JavaApplication63 {
public static void main(String[] args) {
b obj = new b("Hola");
}
}
Resultado:
run:
En el constructor String de a...
Hola
En el constructor String de b...
Hola
BUILD SUCCESSFUL (total time: 1 second)
·
Una forma sencilla y rápida de aprender JAVA, observando y deduciendo cómo se comporta el lenguaje a través de ejemplos prácticos.
Archivo del blog
-
▼
2012
(38)
-
▼
marzo
(13)
- Crear una subclase usando la herencia.
- Multiniveles de herencia. (subclases de subclases).
- Gestión multiniveles de constructores.
- Cálculo letra del DNI.
- Acceso a los miembros sobreescritos: uso de super.
- Crear una clase abstracta: abstract.
- Determinar la clase de un objeto: getClass.
- Clase interna anónima.
- Interfaces para herencia múltiple (estructura bási...
- Uso de la palabra clave this.
- Devolver objetos desde métodos.
- Devolver arrays desde métodos.
- Llamar a los constructores de una superclase.
- ► septiembre (3)
-
▼
marzo
(13)
-
►
2020
(12)
- ► septiembre (1)
lunes, 26 de marzo de 2012
Devolver arrays desde métodos.
Código Java:
//Devolver arrays desde métodos.
package pasomatrizes;
public class PasoMatrizes {
public static class ArrayFactory {
public int[] getNewArray() {
int array[] = {1, 2, 3, 4, 5};
return array;
}
}
public static void main(String[] args) {
ArrayFactory af = new ArrayFactory();
int array[] = af.getNewArray();
for (int i = 0; i < array.length; i++) {
System.out.println("Array[" + i + "] = " + array[i]);
}
}
}
Resultado:
run:
Array[0] = 1
Array[1] = 2
Array[2] = 3
Array[3] = 4
Array[4] = 5
BUILD SUCCESSFUL (total time: 0 seconds)
//Devolver arrays desde métodos.
package pasomatrizes;
public class PasoMatrizes {
public static class ArrayFactory {
public int[] getNewArray() {
int array[] = {1, 2, 3, 4, 5};
return array;
}
}
public static void main(String[] args) {
ArrayFactory af = new ArrayFactory();
int array[] = af.getNewArray();
for (int i = 0; i < array.length; i++) {
System.out.println("Array[" + i + "] = " + array[i]);
}
}
}
Resultado:
run:
Array[0] = 1
Array[1] = 2
Array[2] = 3
Array[3] = 4
Array[4] = 5
BUILD SUCCESSFUL (total time: 0 seconds)
Devolver objetos desde métodos.
Código Java:
//Devolver objetos desde métodos.
package pasoobjeto;
class ObjectFactory {
public CreatedClass getNewObject() {
return new CreatedClass();
}
}
class CreatedClass {
public String tag = "Esta es la etiqueta de datos";
}
public class PasoObjeto {
public static void main(String[] args) {
ObjectFactory of = new ObjectFactory();
CreatedClass cc = of.getNewObject();
System.out.println(cc.tag);
}
}
Resultado:
run:
Esta es la etiqueta de datos
BUILD SUCCESSFUL (total time: 0 seconds)
//Devolver objetos desde métodos.
package pasoobjeto;
class ObjectFactory {
public CreatedClass getNewObject() {
return new CreatedClass();
}
}
class CreatedClass {
public String tag = "Esta es la etiqueta de datos";
}
public class PasoObjeto {
public static void main(String[] args) {
ObjectFactory of = new ObjectFactory();
CreatedClass cc = of.getNewObject();
System.out.println(cc.tag);
}
}
Resultado:
run:
Esta es la etiqueta de datos
BUILD SUCCESSFUL (total time: 0 seconds)
Uso de la palabra clave this.
Codigo:
//Usar la palabra clave this.
package javaapplication60;
class Data{
private String data_string;
Data (String s){
data_string = s;
}
public String getData(){
return data_string;
}
public void printData(){
printer p = new printer();
p.print(this);
}
}
class printer{
void print(Data d){
System.out.println(d.getData());
}
}
public class JavaApplication60 {
public static void main(String[] args){
(new Data("Hola")).printData();
}
}
Resultado:
run:
Hola
BUILD SUCCESSFUL (total time: 0 seconds)
·
//Usar la palabra clave this.
package javaapplication60;
class Data{
private String data_string;
Data (String s){
data_string = s;
}
public String getData(){
return data_string;
}
public void printData(){
printer p = new printer();
p.print(this);
}
}
class printer{
void print(Data d){
System.out.println(d.getData());
}
}
public class JavaApplication60 {
public static void main(String[] args){
(new Data("Hola")).printData();
}
}
Resultado:
run:
Hola
BUILD SUCCESSFUL (total time: 0 seconds)
·
viernes, 23 de marzo de 2012
Interfaces para herencia múltiple (estructura básica).
Codigo:
//Interfaces para herencia múltiple (estructura básica).
//Uso de las claves: interface e implement.
package main;
interface b{
//codigo
}
interface c{
//codigo
}
class a implements b, c {
//codigo
}
public class Main {
public static void main(String[] args) {
a obj = new a();
}
}
·
//Interfaces para herencia múltiple (estructura básica).
//Uso de las claves: interface e implement.
package main;
interface b{
//codigo
}
interface c{
//codigo
}
class a implements b, c {
//codigo
}
public class Main {
public static void main(String[] args) {
a obj = new a();
}
}
·
Clase interna anónima.
Código Java (ClaseInternaAnonima.java):
package claseinternaanonima;
class a {
a() {
(new b() {
public void print() {
System.out.println("Hola");
}
}).print();
}
}
class b {}
public class ClaseInternaAnonima {
public static void main(String[] args) {
a obj = new a();
}
}
Resultado:
run:
Hola
BUILD SUCCESSFUL (total time: 0 seconds)
package claseinternaanonima;
class a {
a() {
(new b() {
public void print() {
System.out.println("Hola");
}
}).print();
}
}
class b {}
public class ClaseInternaAnonima {
public static void main(String[] args) {
a obj = new a();
}
}
Resultado:
run:
Hola
BUILD SUCCESSFUL (total time: 0 seconds)
Determinar la clase de un objeto: getClass.
Codigo:
//Determinar la clase de un objeto: getClass.
package clasedelobjeto;
class a{
public void print(){
System.out.println("Aqui esta a...");
}
}
class b extends a{
public void print(){
System.out.println("Aqui esta b...");
}
}
class c extends a{
public void print(){
System.out.println("Aqui esta c...");
}
}
public class ClaseDelObjeto {
public static void main(String[] args) {
a primera = new a(); //objeto de la clase base a
b segunda = new b(); //objeto de la subclase b
c tercera = new c(); //objeto de la subclase c
a ref_a;
ref_a = primera;
System.out.println("La clase ref_a es: "+ref_a.getClass());
ref_a.print();
ref_a = segunda;
System.out.println("La clase ref_a es: "+ref_a.getClass());
ref_a.print();
ref_a = tercera;
System.out.println("La clase ref_a es: "+ref_a.getClass());
ref_a.print();
}
}
Resultado:
run:
La clase ref_a es: class clasedelobjeto.a
Aqui esta a...
La clase ref_a es: class clasedelobjeto.b
Aqui esta b...
La clase ref_a es: class clasedelobjeto.c
Aqui esta c...
BUILD SUCCESSFUL (total time: 1 second)
·
//Determinar la clase de un objeto: getClass.
package clasedelobjeto;
class a{
public void print(){
System.out.println("Aqui esta a...");
}
}
class b extends a{
public void print(){
System.out.println("Aqui esta b...");
}
}
class c extends a{
public void print(){
System.out.println("Aqui esta c...");
}
}
public class ClaseDelObjeto {
public static void main(String[] args) {
a primera = new a(); //objeto de la clase base a
b segunda = new b(); //objeto de la subclase b
c tercera = new c(); //objeto de la subclase c
a ref_a;
ref_a = primera;
System.out.println("La clase ref_a es: "+ref_a.getClass());
ref_a.print();
ref_a = segunda;
System.out.println("La clase ref_a es: "+ref_a.getClass());
ref_a.print();
ref_a = tercera;
System.out.println("La clase ref_a es: "+ref_a.getClass());
ref_a.print();
}
}
Resultado:
run:
La clase ref_a es: class clasedelobjeto.a
Aqui esta a...
La clase ref_a es: class clasedelobjeto.b
Aqui esta b...
La clase ref_a es: class clasedelobjeto.c
Aqui esta c...
BUILD SUCCESSFUL (total time: 1 second)
·
Crear una clase abstracta: abstract.
Codigo:
package claseabstracta;
abstract class a{
abstract String getData();
public void print(){
System.out.println(getData());
}
}
class b extends a{
String getData(){
return "Hola";
}
}
public class JavaApplication69 {
public static void main(String[] args) {
b b1 = new b();
b1.print();
}
}
Resultado:
run:
Hola
BUILD SUCCESSFUL (total time: 0 seconds)
·
package claseabstracta;
abstract class a{
abstract String getData();
public void print(){
System.out.println(getData());
}
}
class b extends a{
String getData(){
return "Hola";
}
}
public class JavaApplication69 {
public static void main(String[] args) {
b b1 = new b();
b1.print();
}
}
Resultado:
run:
Hola
BUILD SUCCESSFUL (total time: 0 seconds)
·
Acceso a los miembros sobreescritos: uso de super.
Codigo:
//Acceso a los miembros sobreescritos
package usarsuper;
class animal{
public void breathe(){
System.out.println("Respirar");
}
}
class pez extends animal{
public void breathe(){
System.out.println("Burbujear");
}
public void newbreathe(){
breathe(); //coge el breathe de la subclase "pez"
super.breathe(); //coge el breathe de la clase base "animal"
}
}
public class JavaApplication68 {
public static void main(String[] args) {
System.out.println("Crear un animal...");
animal a = new animal();
a.breathe();
System.out.println("Crear pez...");
pez p = new pez();
p.newbreathe();
}
}
Resultado:
run:
Crear un animal...
Respirar
Crear pez...
Burbujear
Respirar
BUILD SUCCESSFUL (total time: 0 seconds)
·
//Acceso a los miembros sobreescritos
package usarsuper;
class animal{
public void breathe(){
System.out.println("Respirar");
}
}
class pez extends animal{
public void breathe(){
System.out.println("Burbujear");
}
public void newbreathe(){
breathe(); //coge el breathe de la subclase "pez"
super.breathe(); //coge el breathe de la clase base "animal"
}
}
public class JavaApplication68 {
public static void main(String[] args) {
System.out.println("Crear un animal...");
animal a = new animal();
a.breathe();
System.out.println("Crear pez...");
pez p = new pez();
p.newbreathe();
}
}
Resultado:
run:
Crear un animal...
Respirar
Crear pez...
Burbujear
Respirar
BUILD SUCCESSFUL (total time: 0 seconds)
·
Cálculo letra del DNI.
Codigo:
package dni1;
import java.util.Scanner;
public class Dni1 {
public static void main(String[] args) {
String letras = "TRWAGMYFPDXBNJZSQVHLCKE";
System.out.println("Introduce DNI sin letra: ");
Scanner leer = new Scanner(System.in);
int dni = Integer.parseInt(leer.next());
int index = dni - (Math.abs(dni/23)*23);
System.out.println("Su letra de DNI es: "+ letras.charAt(index));
}
}
Resultado:
run:
Introduce DNI sin letra:
12345678
Su letra de DNI es: Z
BUILD SUCCESSFUL (total time: 4 seconds)
·
package dni1;
import java.util.Scanner;
public class Dni1 {
public static void main(String[] args) {
String letras = "TRWAGMYFPDXBNJZSQVHLCKE";
System.out.println("Introduce DNI sin letra: ");
Scanner leer = new Scanner(System.in);
int dni = Integer.parseInt(leer.next());
int index = dni - (Math.abs(dni/23)*23);
System.out.println("Su letra de DNI es: "+ letras.charAt(index));
}
}
Resultado:
run:
Introduce DNI sin letra:
12345678
Su letra de DNI es: Z
BUILD SUCCESSFUL (total time: 4 seconds)
·
miércoles, 21 de marzo de 2012
Gestión multiniveles de constructores.
Codigo:
//Gestion Multiniveles de Constructores
package jerarquia2;
class a{
a(){ System.out.println("a"); }
}
class b extends a{
b(){ System.out.println("b"); }
}
class c extends b{
c(){ System.out.println("c"); }
}
class d extends c{
d(){ System.out.println("d"); }
}
//Principal
public class Jerarquia2 {
public static void main(String[] args) {
System.out.println("1- objeto: ");
d objeto = new d();
System.out.println("2- objeto2: ");
b objeto2 = new b();
}
}
Resultado:
run:
1- objeto:
a
b
c
d
2- objeto2:
a
b
BUILD SUCCESSFUL (total time: 1 second)
Multiniveles de herencia. (subclases de subclases).
Codigo:
//Multiniveles de herencia. (subclases de subclases)
package jerarquia;
//nivel 1 (base)
class papel{
public void start(){
System.out.println("Coger tipo puntero...");
}
}
//nivel 2 (pincel)
class pincel extends papel{
public void usarpincel(){
System.out.println("Usar pincel...");
}
}
//nivel 2 (brocha)
class brocha extends papel{
public void usarbrocha(){
System.out.println("Usar brocha...");
}
}
//nivel 3 (escribir con pincel)
class escribir extends pincel{
public void escritura(){
System.out.println("Escribiendo...");
}
}
//nivel 3 (dibujar con pincel)
class dibujar extends pincel{
public void dibujo(){
System.out.println("Dibujando...");
}
}
//nivel 3 (pintar con brocha)
class pintar extends brocha{
public void pinta(){
System.out.println("Pintando...");
}
}
//nivel 3 (colorear con brocha)
class colorear extends brocha{
public void colorea(){
System.out.println("Coloreando...");
}
}
//Principal
public class Jerarquia {
public static void main(String[] args) {
System.out.println("1- ");
escribir e = new escribir();
e.start();
e.usarpincel();
e.escritura();
System.out.println("2- ");
dibujar d = new dibujar();
d.start();
d.usarpincel();
d.dibujo();
System.out.println("3- ");
pintar p = new pintar();
p.start();
p.usarbrocha();
p.pinta();
System.out.println("4- ");
colorear c = new colorear();
c.start();
c.usarbrocha();
c.colorea();
}
}
Resultado:
run:
1-
Coger tipo puntero...
Usar pincel...
Escribiendo...
2-
Coger tipo puntero...
Usar pincel...
Dibujando...
3-
Coger tipo puntero...
Usar brocha...
Pintando...
4-
Coger tipo puntero...
Usar brocha...
Coloreando...
BUILD SUCCESSFUL (total time: 0 seconds)
Crear una subclase usando la herencia.
Código (EjemploSubClase.java):
package ejemplosubclase;
// Clase base
class Vehiculo {
// Método
public void arrancar() {
System.out.println("Arrancar");
}
}
// Subclase de la clase base
class Coche extends Vehiculo {
// Método
public void conducir() {
System.out.println("Conducir");
}
}
public class EjemploSubClase {
public static void main(String[] args) {
System.out.println("Crear coche...");
Coche c = new Coche();
c.arrancar();
c.conducir();
}
}
Resultado:
run:
Crear coche...
Arrancar
Conducir
BUILD SUCCESSFUL (total time: 0 seconds)
package ejemplosubclase;
// Clase base
class Vehiculo {
// Método
public void arrancar() {
System.out.println("Arrancar");
}
}
// Subclase de la clase base
class Coche extends Vehiculo {
// Método
public void conducir() {
System.out.println("Conducir");
}
}
public class EjemploSubClase {
public static void main(String[] args) {
System.out.println("Crear coche...");
Coche c = new Coche();
c.arrancar();
c.conducir();
}
}
Resultado:
run:
Crear coche...
Arrancar
Conducir
BUILD SUCCESSFUL (total time: 0 seconds)
Suscribirse a:
Entradas (Atom)
Con la tecnología de Blogger.