abstract class Person{
private int age;
private String name;
public Person(int age,String name) {//构造方法,传参数
this.age=age;
this.name=name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public abstract void want();
}
class Student extends Person{
private int score;
public int getScore() {
return score;
}
public void setScore(int score) {
this.score=score;
}
public Student(int age, String name,int score) {
super(age, name);//重要!!!!!!!!!!!!!!!!
this.score=score;
}
public void want() {
System.out.println(getName()+getAge()+getScore());
}
}
class Worker extends Person{
private int money;
public int getMoney() {
return money;
}
public void setMoney(int money) {
this.money=money;
}
public Worker(int age, String name,int money) {
super(age, name);//重要!!!!!!!!!!!!!
this.money=money;
}
public void want() {
System.out.println(getName()+getAge()+getMoney());
}
}
public class Test01 {
public static void main(String[] args) {
Student s=new Student(10,"张三",100);
s.want();
Worker w=new Worker(20,"李四",2000);
w.want();
}
工人与学生共有属性为name、age,私有属性为工资及分数
通过继承Person方法继承 name及age属性,同时声明自己的私有属性工资及分数
interface USB{
void start();//默认抽象方法
void stop();
}
class C{
public static void work(USB u) {
u.start();
System.out.println("工作中");
u.stop();
}
}
class USBDisk implements USB{
public void start() {
System.out.println("kaishi");
}
public void stop() {
System.out.println("jieshu");
}
}
class Printer implements USB{
public void start() {
System.out.println("dayinjigongzuo");
}
public void stop() {
System.out.println("dayinjitingzhi");
}
}
public class Test02 {
public static void main(String[] args) {
C.work(new USBDisk());
C.work(new Printer());
}
输出结果:
kaishi
工作中
jieshu
dayinjigongzuo
工作中
dayinjitingzhi