代码块的总结
class Mid extends Root{
?? ?static {
?? ??? ?System.out.println("Mid的靜態初始化塊");
?? ?}
?? ?{
?? ??? ?System.out.println("Mid的普通初始化塊");
?? ?}
?? ?public Mid() {
?? ??? ?super();
?? ??? ?System.out.println("Mid的無參構造器");
?? ?}
?? ?public Mid(String info) {
?? ??? ?this();
?? ??? ?System.out.println("Mid的帶參構造器,其參數為:" + info);
?? ?}
}
class Root{
?? ?static {
?? ??? ?System.out.println("Root的靜態初始化塊");
?? ?}
?? ?{
?? ??? ?System.out.println("Root的普通初始化塊");
?? ?}
?? ?public Root() {
?? ??? ?System.out.println("Root的無參構造器");
?? ?}
}
class Leaf extends Mid{
?? ?static {
?? ??? ?System.out.println("Leaf的靜態初始化塊");
?? ?}
?? ?{
?? ??? ?System.out.println("Leaf的普通初始化塊");
?? ?}
?? ?public Leaf() {
?? ??? ?super("非常6+1");
?? ??? ?System.out.println("Leaf的無參構造器");
?? ?}
?? ?
}
public class LeafTest {
?? ?public static void main(String[] args) {
?? ??? ?new Leaf();
?? ?}
}
運行結果為:
總結:代碼塊的編譯優先于構造器
并且同為靜態初始化塊時,從根類向下進行。
在代碼塊中對屬性賦值:
總結
- 上一篇: windows字体
- 下一篇: MYSQL8.0 OCP考试题库(如需完