在Java中,访问说明符和访问修饰符是一回事吗?
答案 0 :(得分:41)
“访问修饰符”是private
中使用的protected
,public
和{{1}}的官方术语。 “访问说明符”在Java language specification中同义使用,但这是我第一次注意到这一点。坚持使用JLS术语可能更好。
答案 1 :(得分:5)
参考Sun Java Docs,它们似乎都是相同的:
答案 2 :(得分:3)
答案 3 :(得分:1)
Java基本上有两种类型的修饰符:
Java访问修饰符和Java访问说明符是相同的,public
,private
,protected
。
答案 4 :(得分:0)
根据我的说法,是的,这两个术语指的是同一个词并且可以互换使用。
答案 5 :(得分:0)
JDI参考是我见过Java规范中使用的术语“访问说明符”的唯一地方。即便如此,public / protected / private / package也称为“修饰符”。实际上没有理由在Java中使用“访问说明符”这个术语,显然只是成千上万页中的一个错误。
答案 6 :(得分:0)
在某些较旧的语言中,公共,私有,受保护和默认(如C ++)被视为访问说明符,其他所有内容都被视为访问修饰符,但在Java中没有说明符的术语,默认情况下一切都只被视为修饰符。 所以public,private,protected,default,final,abstract,static,strictfp,synchronized,native,transient和volatile都只是修饰符。
简单测试就是我们编译以下代码
私人课程测试{ }
我们将得到编译时错误,说这里不允许修改私有。对于其他修饰符也是如此。 也许java编译器(javac)只将所有内容视为“修饰符”。
答案 7 :(得分:0)
在Java中没有称为“访问说明符”的 ,在Java中只有 个访问修饰符
误解来自C ++之类的语言,其中公共,私有,受保护,默认被视为访问说明符,其余(静态,最终等)被视为访问修饰符
以下是证明,因为编译器说“不允许使用修饰符私有” 此处”,即编译器所说的修饰符而不是说明符
答案 8 :(得分:-3)
从技术上讲,private,public,protected和default被视为访问说明符。这些处理谁可以... 问题。修改器afaik是易失性的,最终的,静态的,瞬态的等等。这些处理如何... 方面。
答案 9 :(得分:-4)
通过使用访问说明符,我们定义谁可以访问我们的类/方法和变量(或者我们使用访问说明符的任何人)。 基本上java访问说明符有四种类型 -
但是访问修饰符是类/方法/变量的属性。 访问修饰符有五种类型