Java并发编程--synchronized关键字

 synchronized 修饰的对象有以下几种:

修饰一个代码块,被修饰的代码块称为同步语句块,其作用的范围是大括号{}括起来的代码,作用的对象是调用这个代码块的对象;

    public void test1() {
        synchronized (this) {
            System.out.println("修饰一个代码块");
        }
    }

修饰一个方法,被修饰的方法称为同步方法,其作用的范围是整个方法,作用的对象是调用这个方法的对象;

    public synchronized void test2() {
        System.out.println("修饰一个方法");
    }

修饰一个静态方法,其作用的范围是整个静态方法,作用的对象是这个类的所有对象;

    public synchronized static void test3() {
        System.out.println("修饰一个静态方法");
    }

修饰一个类,其作用的范围是synchronized后面括号括起来的部分,作用的对象是这个类的所有对象。

    public void test4(){
        synchronized(SynchronizedTest.class){
            System.out.println("修饰一个类");
        }
    }

 

posted @ 2020-07-16 09:58  景岳  阅读(98)  评论(0编辑  收藏  举报