码迷,mamicode.com
首页 > 其他好文 > 详细

abstract ,interface 之间的区别 和 abstract ,native之间的区别

时间:2015-03-02 11:02:26      阅读:114      评论:0      收藏:0      [点我收藏+]

标签:

语法区别:

  abstract:抽象类--有abstract修饰,有构造方法;interface(接口)没有;

          有普通的成员变量;      interface 没有;

         有非抽象的普通方法;    interface 没有;

 抽象方法的访问类型是public,protected;     interface 的抽象方法必须是public abstract 修饰;默认是public abstract;

抽象方法中静态成员的类型可以是任意的;    interface 的静态成员的类型必须是 public  static  final 修饰的;

应用区别:

  一个类只能继承一个抽象类;可以实现多个接口;

  抽象类:主要用于代码实现上的重用;

  接口:  主要用于模块之间的通信契约;在架构设计方法上发挥作用;

  abstract的method不可以是static的。因为抽象的方法是要被子类实现的!static 与子类扯不上关系!

native:原生的;

  native  method (原生方法) 是Java调用非Java代码的接口;该方法有非Java代码实现;定义原生方法时,不提供是实现体;

abstract  没有实现体;

native 标识符能和Java 标识符 连用,但abstract不行;
    因为 native 有实现体 ,abstract没有实现体
    -----例子:在定义一个native method时,并不提供实现体(有些像定义一个Java Interface),因为其实现体是由非Java语言在外面实现的
public class IHaveNatives
{
    native public void Native1( int x ) ;
    native static public long Native2() ;
    native synchronized private float Native3( Object o ) ;
    native void Native4( int[] ary ) throws Exception ;
}

 

 

 

 

技术分享

abstract ,interface 之间的区别 和 abstract ,native之间的区别

标签:

原文地址:http://www.cnblogs.com/my129go/p/4308121.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!