面向对象编程中的优先级(不是运算符优先级)

发布于 2024-11-16 22:39:03 字数 53 浏览 2 评论 0原文

以下各项的优先顺序是什么 构造函数、静态块和非静态块 谢谢

In which order is the precedence of the following
Constructor, Static Block and Non Static Block
Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

沫尐诺 2024-11-23 22:39:03

当类初始化时,将执行非静态块。静态块只会执行一次。

构造函数将在对象实例化时执行。

实例化对象时将执行静态块。

这取决于您的语言。

对于Java,静态块总是首先执行,然后是非静态块,然后是构造函数。

public class Q20 {    
static int i;    
int j;      
static  {       
System.out.println("static block");       
}     
{   
System.out.println("non static block");   
}     

public Q20()  {       
System.out.println("constructor");    
}     

public static void main(String args[])  {       
Q20 q = new Q20();          
}  
}  

静态块

非静态块

构造函数

A non static block will execute when the class is initialized. A static block will only be executed once.

The constructor will execute when the object is instantiated.

A static block will execute when the object is instantiated.

That will depend on your language.

For Java, the static block will always be executed first, followed by the non static block and then by the constructor.

public class Q20 {    
static int i;    
int j;      
static  {       
System.out.println("static block");       
}     
{   
System.out.println("non static block");   
}     

public Q20()  {       
System.out.println("constructor");    
}     

public static void main(String args[])  {       
Q20 q = new Q20();          
}  
}  

static block

non static block

constructor

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文