Java 面向对象:接口interfaces 实现Implements
2018-03-30 10:37
344 查看
package com.neusoft.interfaces; /** * 接口:就是一种规范,只能有“常量”和“抽象方法”,是一种特殊的抽象类 * 在接口中定义的方法默认都是:public abstract * 在接口中定义的常量默认都是:public static final * 如何来实现A接口中所有没实现的方法:我们需要创建一个实现类------实现A接口 * 接口也是JAVA中的多态表现形式 A aImpl = new AImpl(); * 接口和抽象类都不能被实例化(new) * 类只支持单继承而接口是支持多继承的 A extends B,C,D,E * 一个类可以是实现一个或多个接口 public class AImpl implements A,B,C * 一个类可以继承一个类/抽象类的同时去实现一个或多个接口 public class AImpl extends Animal implements A,B,C * 使用接口的意义: * 接口可以使方法的定义和实现相分离,降低模块间或系统间的耦合性 * 接口是比较灵活的,后期的框架的思想都是面向接口来编程的 */ public interface A extends B,C { /** * 接口必须写注释 */ // int Max = 10; public void eat(); public void sleep(); public void jump(); }
package com.neusoft.interfaces; public interface B { /** * 学习接口 */ public void study(); }
package com.neusoft.interfaces; public interface C { /** * 游戏接口 */ public void play(); }
package com.neusoft.interfaces; public abstract class Animal { /** * 抽象类 */ public abstract void eat1(); }
package com.neusoft.interfaces; /** * 接口的实现 */ public class AImpl extends Animal implements A,B,C { @Override public void eat() { System.out.println("eat"); } @Override public void sleep() { System.out.println("sleep"); } @Override public void jump() { System.out.println("jump"); } public static void main(String[] args) { AImpl aImpl = new AImpl(); aImpl.eat(); aImpl.sleep(); aImpl.jump(); } @Override public void study() { // TODO Auto-generated method stub } @Override public void play() { // TODO Auto-generated method stub } @Override public void eat1() { // TODO Auto-generated method stub } }
package com.neusoft.interfaces; // 既继承又实现接口 public class AImpl extends Animal implements A, B, C { @Override public void eat() { System.out.println("eat"); } @Override public void sleep() { System.out.println("sleep"); } @Override public void jump() { System.out.println("jump"); } @Override public void study() { // TODO Auto-generated method stub } @Override public void play() { // TODO Auto-generated method stub } @Override public void eat1() { // TODO Auto-generated method stub } public static void main(String[] args) { AImpl aImpl = new AImpl(); aImpl.eat(); aImpl.sleep(); aImpl.jump(); } }
相关文章推荐
- java-面向对象之继承(感言:经过第一天和Java中类的继承和接口的实现的接触,自己需要学习的还很多,还要从基础抓起,尽管有点迷糊,但学到很多很喜欢这种时光!加油!)下面是查到的相关资料以备查看。
- Java - 接口是否可继承(extends)接口?抽象类是否可实现(implements)接口?抽象类是否可继承具体类(concrete class)?
- Java 的枚举(Enums) 可以实现接口(Interfaces)
- JAVA中implements实现多接口
- 10-面向对象(接口-实现implements) 10-面向对象(接口-实现implements)2
- 【Java面试题】13 Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)?
- JAVA中implements实现多接口
- JAVA中implements实现多接口
- Java 的枚举(Enums) 可以实现接口(Interfaces)
- JAVA中implements实现多接口
- Java 面向对象:接口的实现
- Java中接口interface和实现implements问题
- JAVA 构造器, extends[继承], implements[实现], Interface[接口], reflect[反射], clone[克隆], final, static, abstrac
- Java面向对象 匿名内部类实现接口
- 【Java面试题】60 接口是否可继承接口? 抽象类是否可实现(implements)接口? 抽象类是否可继承具体类(concrete class)? 抽象类中是否可以有静态的main方法?
- Java 学习笔记 (3) -抽象类 abstract 接口 interface 内部类 inner class 继承 extends 实现 implements 包 package
- JAVA中implements实现多接口
- Java面向对象-接口的实现关系
- JAVA中implements实现多接口
- 跟老紫竹学Java-留言板-服务接口的Hibernate实现