首页 > 代码库 > 搜狗一道java题目 关于对象 synchronized 关键字作用在 int, integer

搜狗一道java题目 关于对象 synchronized 关键字作用在 int, integer

 
第一次见到这个题目,我觉得自己没学到java,太浅了,其实这个问题没有考synchronized关键字,只是考什么是对象?
1.在java编程思想的第二章有一句话;
一切都是对象,很可惜int,char 等不是的,虽然他们有他们的包装类,但是java还是保留了int 这些好用的原子类型,
对于synchronized后面可以跟对象和.class所以 字符串是对象可以,Integer对象可以,ExampleCLass.class可以。
 
我想问的是,数组是对象吗?
查了一下,是对象,所以数组也是答案。http://blog.csdn.net/qq1130141391/article/details/8677459我们看懂,口说无凭。
答案就是除了int不行其他都行
 
package heelo;class MyThread  implements Runnable{	//private int a=6;  通不过编译    //	private String a="daad"; 成功	// private Integer a=new Integer(-33); 通过	 //private int a[]=new int[10]; 通过	//private Class a=Integer.class; 通过	@Override	public void run() {		// TODO 自动生成的方法存根		synchronized (a) {			for(int i=0;i<5;i++)			{				System.out.println(Thread.currentThread().getName()+i);			}					}			}	}public class Solution{	public static void main(String args[])	{		MyThread my=new MyThread();				Thread t1=new Thread(my,"AAAA");		Thread t2=new Thread(my,"BBBB");		t1.start();		t2.start();	}}