抽象类
关键字为abstract
package com.oop.demo08;
//abstract 抽象类:本事还是类 extends:java只有单继承 (接口可以多继承)
public abstract class Action {
//约束~有人帮我们实现
//abstract,抽象方法,只有方法名,没有方法体
public abstract void doSomething();
//1.不能new这个抽象类,只能靠子类去实现它:约束!
//2.抽象类中可以写普通方法
//3.抽象方法必须在抽象类中
}
抽象类中的所有方法都要有子类来实现,如果子类也是一个抽象类那就让下一个子类来实现,以此类推,关键是起到一个约束的作用
package com.oop.demo08;
//抽象类的所有方法都必须要子类来实现
public abstract class A extends Action{
@Override
public void doSomething() {
}
}
接口
interface 定义接口的关键字,接口中的所有定义的方法其实都是抽象的 public abstract...
我们定义一个UserService接口,例如:
package com.oop.demo09;
//要有抽象的思维
//interface 定义接口的关键字
public interface UserService {
//常量
int AGE = 99;
//接口中的所有定义的方法其实都是抽象的 public
void add(String name);
void delete(String name);
void update(String name);
void query(String name);
}
1.接口有约束作用
2.定义一些方法,可以让不同的人来实现,一个实现类可以实现多个接口~ //1个接口,可以让不同的人来实现它
例如:
package com.oop.demo09;
//类 可以实现接口 implements 接口
//如果一个类实现了接口,就需要重写接口当中的方法
public class UserServiceImpl implements UserService,TimeService{
@Override
public void add(String name) {
}
@Override
public void delete(String name) {
}
@Override
public void update(String name) {
}
@Override
public void query(String name) {
}
@Override
public void timer() {
}
}
3.修饰符都是public abstract
4.都是常量public static final
5.接口不能被实例化~,接口中没有构造方法
6.implements可以实现多个接口
7.必须要重写接口中的方法~
标签:name,abstract,接口,public,抽象类,void From: https://www.cnblogs.com/whgjwr/p/16597974.html