在Java方法中省略public修饰符
作者:互联网
这个问题已经在这里有了答案: > What is the difference between public, protected, package-private and private in Java? 24个
大家好,我正在学习Java,但是有些问题困扰着我,而教科书并未对此进行解释.
我了解您使用修饰符在类和所有内部声明方法.但是我突然上了一个宣告像
static void(){
}
为什么没有公共或私有修饰符,但它仍然有效?我可以避免在其他任何地方使用public修饰符,或者它如何工作?我了解到static表示该类的成员,并且使它不返回任何值也无效.但是为什么不公开或私有.
谢谢
解决方法:
为了便于说明,术语“功能”和“方法”可互换使用.它们之间的差异很小,有关更多信息,请询问Google.
Java中未明确指定修饰符的方法默认情况下是包私有的,因此该方法对于声明该方法的类在同一包中的所有类可见.
可以访问该类的所有类都可以调用公共函数(即整个项目),而私有方法仅可以在编写该方法的类中调用.还有一个protected修饰符,它指定只能访问这些函数按类,其所有子类和类都在同一包中.
您可能会问:“为什么这么重要?”好问题!
您应该使用修饰符来隐藏其他类的方法/属性,这些方法/属性可能会滥用它们,或者在严重的情况下可能导致意外行为(从技术上讲不一定,但从语义上讲……某些方法只需要更多的隐私,就像我们做).因此,一个好的开始是私有的,这意味着只有在其声明的类中才能调用它.通常,您需要让其他类访问方法,这就是为什么存在包私有,保护和公共修饰符的原因.
数据封装是编程中的重要范例,这些修饰符可帮助您实现这一目标.
标签:subroutine,java,class,methods 来源: https://codeday.me/bug/20191119/2038637.html