今天我们用接口来实现卷帘门开门开锁,关门关锁的一个简单过程
首先要确定好自己要建立的类,有Lock的接口,Master类,juanlianDoor类,我们一般不把接口当做父类,但是也可以操作,一般把门当做父类,
一,可以先设置Lock的抽象类和父类,注意一下关键词
package cn.kgc; public interface Lock { //接口中所有的方法都默认为公共抽象的方法 public abstract void lockUp();//上锁 void lockDown();//开锁 }
父类Door
package cn.kgc; /** * @Author Administrator * @Date 2021/11/4 * @Descrption */ public abstract class Door { abstract void open(); abstract void close();//door和lock规定了标准 }
二,接下来再设置开门的一些动作,juanlianDoor类
这边要继承父类,再配上刚刚设置的接口Lock
package cn.kgc; /** * @Author Administrator * @Date 2021/11/4 * @Descrption */ public class juanlianDoor extends Door implements Lock{ @Override void open() { lockDown(); System.out.println("用力向上一推,打开卷帘门"); } @Override void close() { lockUp(); System.out.println("按下开关,锁上了"); } @Override public void lockUp() { System.out.println("用力向下一拉,关上了卷帘门"); } @Override public void lockDown() { System.out.println("按下开关,锁开了"); } }
三,Master类
这边我直接把main方法也放在这里了,一般是放在测试类
package cn.kgc; /** * @Author Administrator * @Date 2021/11/4 * @Descrption 主人类,模拟人进出房间的过程 */ public class Master { String name; public Master(String name ){//有参构造 this.name=name; } public void getIn(Door d){ System.out.println(name+"来到门前,掏出钥匙"); d.open(); System.out.println(name+"移步进门"); } public void getOut(Door d){ System.out.println(name+"来到门前,掏出钥匙"); d.close(); } public static void main(String[] args) { Master m=new Master("包租婆"); SecurityDoor sd=new SecurityDoor(); m.getIn(sd); } }