empleado.java
来自「Code examples in Java about functions, t」· Java 代码 · 共 75 行
JAVA
75 行
package eda.pract01.RecursosHumanos;
import java.util.*;
public class Empleado extends Persona {
protected int sueldoBase;
ArrayList cargos = new ArrayList();
class Cargo { //clase interna
private String nombre;
private int extra;
Cargo(String nombre, int extra) {
this.nombre = nombre;
this.extra = extra;
}
public long getExtra() {
return extra;
}
public void setExtra(int extra) {
this.extra = extra;
}
public String toString() {
return " Puesto: " + nombre + " Sueldo Extra: " + getExtra();
}
}
public Empleado(String nombre, int edad, int sueldoBase, String cargo,
int extra) {
//TODO
super(nombre,edad);
this.sueldoBase = sueldoBase;
cargos.add(new Cargo(cargo,extra));
}
public Object clone() throws CloneNotSupportedException {
//TODO
Empleado clon = (Empleado) super.clone();
clon.cargos = new ArrayList();
Iterator itl = cargos.iterator();
while(itl.hasNext())
{
Cargo cargooriginal = (Cargo) itl.next();
Cargo cargoclonado = new Cargo(new String(cargooriginal.nombre),cargooriginal.extra);
clon.cargos.add(cargoclonado);
}
return clon;
}
public void addCargo(String nombre, int extras) {
cargos.add(new Cargo(nombre, extras));
}
public void setSueldoBase(int sueldoBase) {
this.sueldoBase = sueldoBase;
}
public void setExtra(int extra) {
Cargo cargo = (Cargo) cargos.get(cargos.size() - 1);
cargo.setExtra(extra);
}
public String toString() {
return super.toString() + " Sueldo: " + sueldoBase
+ cargos.get(cargos.size() - 1).toString();
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?