java,抽象类与接口的区别
来源:互联网 发布:ceo cfo cmo 知乎 编辑:程序博客网 时间:2024/06/15 02:51
/** * Created by liuyazhou on 2017/4/11. */public interface ZooInterface1 { //接口是公开的,不能含有私有变量或方法, //方法只要是声明即可 void ZooInterface1Fun1();}
/** * Created by liuyazhou on 2017/4/10. */public abstract class Animal extends Zoo{ //抽象类可以含有私有变量 private Integer animalInteger1; //抽象类可以含有私有方法,此时要有函数体 private void Run(){ System.out.println("Run"); } public abstract void cry(); public abstract void eat();}
/** * Created by liuyazhou on 2017/4/10. */public class Cat extends Animal { @Override public void cry() { System.out.println("猫哭..."); } @Override public void eat() { } @Override public void zooFun1() { System.out.println("Cat zooFun1...."); } @Override public void ZooInterface1Fun1() { }}
/** * Created by liuyazhou on 2017/4/10. */public class Dog extends Animal { @Override public void cry() { System.out.println("狗哭..."); } @Override public void eat() { } @Override public void zooFun1() { System.out.println("Dog zooFun1...."); } @Override public void ZooInterface1Fun1() { }}
/** * Created by liuyazhou on 2017/4/10. */public abstract class Zoo implements ZooInterface1 { public abstract void zooFun1();}
/** * Created by liuyazhou on 2017/4/11. */public interface ZooInterface1 { //接口是公开的,不能含有私有变量或方法, //方法只要是声明即可 void ZooInterface1Fun1();}
public class Main { public static void main(String[] args) { Animal cat = new Cat(); Animal dog = new Dog(); cat.cry(); dog.cry(); cat.zooFun1(); dog.zooFun1(); }}
输出:
猫哭...狗哭...Cat zooFun1....Dog zooFun1....
1 接口不是类,抽象类是不完整的类
2接口是公开的,里面不能有私有的方法或变量,而抽象类是可以有私有方法或私有变量的
3 一个类可以实现多个接口,但只能继承一个超类
4 抽象类的是对对象的抽象,接口是对行为的抽象
5 抽象类的设计师自底向上的,接口的设计师自顶向下的
0 0
- 抽象类与接口的区别 - [ Java 接口 抽象类 ]
- java接口与抽象类的区别
- java 抽象类与接口的区别
- java 抽象类与接口的区别
- Java抽象类与接口的区别
- java 抽象类与接口的区别
- java 抽象类与接口的区别
- java接口与抽象类的区别
- java抽象类与接口的区别
- java 接口与抽象类的区别
- java接口与抽象类的区别
- JAVA 抽象类与接口的区别
- java抽象类与接口的区别
- java抽象类与接口的区别
- Java抽象类与接口的区别
- java 抽象类与接口的区别
- Java抽象类与接口的区别
- Java抽象类与接口的区别
- Android系统上实现类似按键精灵的效果(模拟触屏点击事件)
- [LeetCode]62. Unique Paths
- java转换json
- 加载框效果
- hdu 2602 01背包
- java,抽象类与接口的区别
- 巧用Delphi制作溅射屏幕
- Java中long数据类型转化为float疑问解答
- linux 重启执行程序
- 进程与线程线程
- for循环内嵌递归用于排列组合
- tomcat manager 403 access denied
- Wireshark基本介绍和学习TCP三次握手
- Docker三剑客之Compose-三