静态方法、非静态方法、构造方法

1.静态方法和非静态方法的区别:

  参考:https://zhidao.baidu.com/question/1433773942389340379.html

2. 静态方法 非静态方法,构造方法执行顺序

2.1 创建B类 

//--------------------------------------------------------------------------------

package test;

public class B  {
        
          B() {  
               System.out.println("B构造块3");  //3. 自己的构造方法
            }  
         
        static {  
            System.out.println("B静态块1");  //1.自己的静态方法
        } 
       
        {  
               System.out.println("B非静态块2");  //2. 自己的非静态块
            }
        
        public void testB(){
            System.out.println("我是B类的特有方法");
        }
}
 

2.2 测试执行顺序

3. 在2的基础上延伸一点

3.1 创建 A类

//--------------------------------------------------------------

package test;

public class A {
        
        A(){
            System.out.println("我是A类的构造无参方法");
        }
        
        static {  
                System.out.println("A静态块");  
            } 
        
        {  
            System.out.println("A非静态块"); 
        } 
        
        //在A中的方法 调用 B的方法
        public void testA(){
            B b = new B();
            b.testB();
            
        }

        //私有
        @SuppressWarnings("unused")
        private void testPrivateA(){
            System.out.println("我是A类private特有方法");
        }
        
}
 

3.2 让B类集成 A类

3.3 测试 执行顺序

这个结果稍微复杂点

猜你喜欢

转载自my.oschina.net/springMVCAndspring/blog/1821703
今日推荐