Java学习资料分享程序猿进化之路

阿里巴巴Java程序员面试题大全系列之Java基础类库(二)

2019-04-11  本文已影响0人  编程说书酱

                                                                                          动力节点Java学院整理

Java面试题(6)设计 4 个线程,其中两个线程每次对 j 增加 1,另外两个线程对 j 每次减少 1。写出程序

public class TestThread

{

private int j;

public synchronized void inc()

{

j++;

System.out.println(Thread.currentThread().getName() + "-inc:" + j);

}

public synchronized void dec()

{

j--;

System.out.println(Thread.currentThread().getName() + "-dec:" + j);

}

public static void main(String[] args)

{

TestThread t=new TestThread();

for (int i = 0; i < 2; i++)

{

Thread inc=new Thread(new Inc(t));

Thread dec=new Thread(new Dec(t));

inc.start();

dec.start();

}

}

}

class Inc implements Runnable

{

private TestThread obj;

public Inc(TestThread obj)

{

this.obj=obj;

}

public void run()

{

// for (int i = 0; i < 100; i++)

// {

this.obj.inc();

// }

}

}

class Dec implements Runnable

{

private TestThread obj;

public Dec(TestThread obj)

{

this.obj=obj;

}

public void run()

{

// for (int i = 0; i < 100; i++)

// {

this.obj.dec();

// }

}

}

Java面试题(7同步和异步有和异同,在什么情况下分别使用他们?举例说明。

同步:上一段代码没的完成,下一段必须等到上一段代码完成后才可以执行。如买票排队

异步:上一段代码没的完成,下一段不必等到上一段代码完成就可以执行。如手机发送短信。

Java面试题(8sleep() 和 wait() 有什么区别?

Sleep 是指休眠给定的时间,当这个时间达到之后,线程会再次醒来。

Wait 是等待状态,多长时间不清楚,由另一个线程将其唤醒。

Java面试题(9当一个线程进入一个对象的一个synchronized 方法后,其它线程是否可进入此对象的其它方法?

如只其它方法是同步方法,不可以进入。如果不是可以进入。

Java面试题(10输入输出流的理解:

在java 使用流的机制进行数据的传送,从文件到内存是输入流,从内存到文件是输出流,输入流可以通过 read 读取,输出流以 write 或 print 写入,对于流可以是分为高层流和低层流,低层以一个字节或字符为单位进行处理,高层流以一批数据为单位进行处理。

FileInputStream(System.in)至 InputSteamReader 至 BufferReader

OutputSteam(System.out)至 printStream

FileReader 至 BufferedReader

FileWriter 至 PrintWriter 或 bufferWriter

分类:

字节(二进制)

FileInputStream(低层输入流)

FileOutputStream(低层输出流)

PrintStream(高层流) System.out.println()

字符(一个 char)

FileReader

FileWriter

原文链接:http://www.bjpowernode.com/javacjwt/385.html

                                                                                                                                                                                        动力节点Java学院整理发布

                                                                                                                                                                                        转载请注明出处

 

上一篇下一篇

猜你喜欢

热点阅读