我经常使用静态关键字,但不清楚静态关键字主要用途是什么。可以任意定义,这是在面向对象的java显示方法中使用的
我查阅了Java文档,了解到Java的< code>Arrays类中的方法都是静态的。我真的不明白他们为什么把它变成静态的背后的原因。 例如,下面的代码违反了 OO 方法,因为如果我有一个类型“X”,那么所有作用于它的方法都应该在它里面: 如果他们实现了以下方式,那就更好了: 任何人都可以解释一下我吗?
问题内容: 为什么我们不能在非静态内部类中使用静态方法? 如果我将内部类设为静态,则可以工作。为什么呢 问题答案: 因为内部类的实例与外部类的实例隐式关联,所以它本身不能定义任何静态方法。由于静态嵌套类无法直接引用其封闭类中定义的实例变量或方法,因此只能通过对象引用使用它们,因此在静态嵌套类中声明静态方法是安全的。
问题内容: 在Java中,外部类可以是public,final,default或abstract。为什么不像静态 问题答案: 外部类已经是隐式静态的。 非静态嵌套类(=内部类)意味着内部类隐式对其父类具有引用。 这就是为什么对于嵌套类,您可以区分静态和非静态。对于外部类来说,这是没有意义的。 这是一个了解静态/非静态嵌套类之间的区别的示例。您应该了解为什么在外部类中它没有意义。
问题内容: 为什么我们不能在非静态内部类中使用静态方法? 如果我将内部类设为静态,则可以工作。为什么? 问题答案: 因为内部类的实例与外部类的实例隐式关联,所以它本身不能定义任何静态方法。由于静态嵌套类无法直接引用其封闭类中定义的实例变量或方法,因此只能通过对象引用使用它们,因此在静态嵌套类中声明静态方法是安全的。
问题内容: Java main()方法的方法签名为: 此方法是否有理由是静态的? 问题答案: 该方法是静态的,因为否则会产生歧义:应调用哪个构造函数?特别是如果你的班级是这样的: JVM应该调用吗?它应该做什么x? 如果不是,JVM是否应该在不运行任何构造方法的情况下实例化?我认为不应该这样,因为这将对整个类进行特殊处理-有时你有一个尚未初始化的实例,并且必须在每个可以调用的方法中进行检查。 对于
问题内容: 我在代码中遇到了python中的未绑定方法错误 在阅读了许多有用的文章之后,我想到了如何在上面添加内容以使代码正常工作。我是python新手。有人可以解释一下为什么要定义静态方法吗?还是为什么不将所有方法都定义为静态方法? 问题答案: 静态方法的使用受到限制,因为它们无法访问类的实例的属性(就像常规方法一样),并且它们也不能访问类本身的属性(就像类方法一样) )。 因此,它们对于日常方