单选题在堆栈类SharedStack的定义中,为了保证堆栈在并发操作中数据的正确性,应在下划线处填入的修饰符是(  )。(两个下划线的填写内容相同)public class SharedStack { ______ int idx = 0; ______ char[] data = new char[10]; public synchronized void push(char c){……} public synchronized void pop(){……}}A publicB 不使用修饰符C priv

题目
单选题
在堆栈类SharedStack的定义中,为了保证堆栈在并发操作中数据的正确性,应在下划线处填入的修饰符是(  )。(两个下划线的填写内容相同)public class SharedStack { ______ int idx = 0; ______ char[] data = new char[10]; public synchronized void push(char c){……} public synchronized void pop(){……}}
A

public

B

不使用修饰符

C

private

D

protected


相似考题
参考答案和解析
正确答案: D
解析:
并发性在一定意义上可以理解为并行,即是为了保证多个线程能够进行同时放访问。因此需要保证多个线程都对其拥有访问权限。在Java语言中,其修饰符的权限如下:①public:被其修饰的类、属性以及方法不仅可以跨类访问,而且允许跨包(package)访问。②private:被其修饰的类、属性以及方法只能被该类的对象访问,其子类不能访问,更不能允许跨包访问。③protect:被其修饰的类、属性以及方法只能被类本身的方法及子类访问,即使子类在不同的包中也可以访问。④不使用修饰符:只允许在同一个包中进行访问。而多线程的安全性不是由这些修饰符决定的,而是由synchronized、volatile等关键字来保证。所以答案选择A。