搬一下以前写的

1、abstract与static

(what)​

abstract:用来声明抽象方法,抽象方法没有方法体,不能被直接调用,必须在子类overriding后才能使用

static:用来声明静态方法,静态方法可以被类及其对象调用

(how)​

static与abstract不能同时使用

(why)​

用static声明方法表明这个方法在不生成类的实例时可直接被类调用,而abstract方法不能被调用,两者矛盾。

2、abstract与native

(what)

native:用来声明本地方法,该方法的实现由非java 语言实现,比如C。一般用于java与外环境交互,或与操作系统交互

(how)​

native 可以与所有其它的java 标识符连用,但是abstract除外。

(why)​

因为native 暗示这些方法是有实现体的,只不过这些实现体

是非java 的,但是abstract却显然的指明这些方法无实现体。

3、abstract与synchronized

(what)​

synchronized:用于防止多个线程同时调用一个对象的该方法,与static连用可防止多个线程同时调用一个类的该方法

(how)

abstract与synchronized不能同时使用

(why)

从synchronized的功能也可以看出,用synchronized的前提是该方法可以被直接调用,显然和abstract连用

最新文章

  1. openssl+前端jsrsa签名+后端nodejs验签
  2. 初学Scala
  3. [Linux 性能检测工具]IOSTAT
  4. 288. Unique Word Abbreviation
  5. HDU 4121 Xiangqi 模拟题
  6. ASP.NET MVC 4应用程序文件夹
  7. ios7下二维码功能的实现
  8. Basic DataList
  9. ⑧bootstrap组件 文字图片 下拉菜单 按钮组 使用基础案例
  10. java_web学习(五) JSTL标准标签库
  11. python数据类型(二)
  12. C语言的三目运算符
  13. [LeetCode] 661. Image Smoother_Easy
  14. hadoop本地集群搭建
  15. WPF TreeView IsExpanded 绑定不上的问题
  16. Windows 使用 StarWind 创建的 Oracle RAC环境 异常关机之后的处理过程
  17. 常用css样式函数总结
  18. Mysql 主键常用修改
  19. return to dl_resolve无需leak内存实现利用
  20. 常量池之字符串常量池String.intern()

热门文章

  1. mysql的面试试题
  2. 12款令程序员惊叹的CSS3效果库
  3. C# MVC分页,razor,view传送model
  4. 05JS高级 方法没有块级作用域
  5. 实力为王 八年DBA经验谈
  6. 私有构造函数(c# .NET)
  7. Powerdesigner逆向工程从sql server数据库生成pdm (完整版)
  8. Excel转JSON-简单-暴力-迅速
  9. C语言中内存分配 (转)
  10. IO-03. 求整数均值