知识大全 Java SynDemo对象如何解决继承问题

Posted

篇首语:笛里谁知壮士心,沙头空照征人骨。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 Java SynDemo对象如何解决继承问题相关的知识,希望对你有一定的参考价值。

Java SynDemo对象如何解决继承问题  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  Java SynDemo对象刚一出现的时候有很多程序员都很头痛 其实这是完全没有必要的 下面我们就来详细的学习下有关的相关问题 我们发现 对于Java SynDemo对象 只有synMethord 运行了 而synMethord 却没有运行

  这是应为在方法级别的synchronized声明将lock这个类对象的当前实例 所以在synMethord 运行结束unlock之前 当前Java SynDemo对象实例是无法运行synMethord 的 这种方法级别的synchronized声明和以下的做法是等同的

   package blogs gpcuster;/** * * @author Aaron Guo * */

   public class SynDemo public void synMethord ()

  synchronized (this) while (true) try Thread sleep( );

  System out println( synMethord ); catch (InterruptedException

  e) // TODO Auto generated catch block

   e printStackTrace();

  

  

  

  

   public void synMethord () synchronized (this) while (true)

   try Thread sleep( ); System out println( synMethord );

  catch (InterruptedException e) // TODO Auto generated catch block

   e printStackTrace();

  

  

  

  

  

  运行程序 结果与上次相同

  如果我们希望分别同步 个方法该如何处理?可以参考这个实现

   package blogs gpcuster;/** * * @author Aaron Guo * */

   public class SynDemo private Object flag = new Object();

  private Object flag = new Object(); public void synMethord ()

   synchronized (flag ) while (true) try Thread sleep( );

  System out println( synMethord ); catch (Interrupted

  Exception e) // TODO Auto generated catch block

   e printStackTrace();

  

  

  

  

   public void synMethord () synchronized (flag ) while (true)

   try Thread sleep( ); System out println( synMethord );

  catch (InterruptedException e) // TODO Auto generated catch block

   e printStackTrace();

  

  

  

  

  

  运行程序 结果如我们预期

   main

   synMethord

   synMethord

   main

   synMethord

   main

   synMethord

   synMethord

cha138/Article/program/Java/hx/201311/25677

相关参考

知识大全 面向对象继承实例(a如何继承b问题)(自写)

经常会看到a如何继承b的问题决定写一下其实继承就是继承父级的属性和方法感兴趣的朋友可以参考下哈希望对大家有所帮助 复制代码代码如下:cha138/Article/program/J

知识大全 java之单例设计模式

  设计模式解决某一类问题最行之有效的方法(java中有种通用设计模式)  单例设计模式解决一个类在内存中只存在一个对象  单例设计模式有两种方式  )饿汉式  先初始化对象当类一进内存就创建好对象 

知识大全 面向对象思想之 -- 理解类和对象

  上一次在使用Java开始面向对象的编程这篇文章中我们学习了一个编程语言要真正成为面向对象的它应该支持信息隐藏/封装多态继承和动态绑定另外我们知道了Java完全支持这些功能而且知道了因为Java是一

知识大全 面向对象思想之 -- 限制对象属性的访问

  虽然Java只支持从一个父类继承但它使用接口的方式支持多重继承  接口实现了多态使得我们能够给与对象不同特性以满足不同的需要  你可以使用多态机制让完成相似功能的不同的方法拥有相同的名字但是拥有不

知识大全 Java单例对象同步问题探讨

Java单例对象同步问题探讨  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  单例对象(Singl

知识大全 批量实现面向对象的实例代码

本文为大家详细介绍下面向对象的继承以及如何实现批量实现面向对象感兴趣的可以参考下哈希望对大家有所帮助 复制代码代码如下:cha138/Article/program/Java/JS

知识大全 Java多线程支持如何才能解决接口问题

Java多线程支持如何才能解决接口问题  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  Java多

知识大全 跟你一起分析JAVA中文比较问题的解决

跟你一起分析JAVA中文比较问题的解决  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  Java的

知识大全 Java多线程如何解决关键字封锁问题

Java多线程如何解决关键字封锁问题  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  Java多线

知识大全 面向对象三大特性之封装

  java学习已经到了最核心的章节面向对象的三大特性封装继承和多态接下来会写多篇博文(数目不定请关注近期博客吧!午饭们!)来总结这里面的每一个细节小可很希望每一篇文章的阐述会给你带来一点启发小可也是