package com.kuang.oop.Demo10;
//抽象类
public abstract class Action {
//抽象方法,只有方法名,没有具体实现;通过子类实现
public abstract void run();
//正常方法
public void speak(){
System.out.println("speak");
}
}
==========================================================
public class Run extends Action{
//子类继承抽象类,需要实现其抽象方法
@Override
public void run() {
System.out.println("run");
}
}
接口是一种规范,使代码的约束和具体实现相分离,提高开发效率
package com.kuang.oop.Demo10;
//关键字:interface
public interface UserService {
//接口中定义的常量默认是全局,public static final,一般不会在接口中这样使用
int AGE=10;
//接口定义的方法默认是public abstract
void speak();
void eat(String food);
}
public interface TimeService {
void time();
}
=============================================================
//接口可多继承
public class UserServiceImpl implements UserService,TimeService{
@Override
public void time() {
//具体实现
}
@Override
public void speak() {
//具体实现
}
@Override
public void eat(String food) {
//具体实现
}
}
原文:https://www.cnblogs.com/zuozs/p/14402904.html