这样可以么

来源:8-10 Java 中的 static 使用之静态初始化块

weixin_慕仰5157161

2019-08-10 15:43

public class HelloWorld {
     String name; // 声明变量name	
     String sex; // 声明变量sex	
     static int age;// 声明静态变量age        
     // 构造方法	
     public HelloWorld() {
         name = "bighead";
         System.out.println("通过构造方法初始化name");		
     }        
     // 初始化块	
     { 		
         System.out.println("通过初始化块初始化sex");
         sex = "男";	
     }        
     // 静态初始化块	    
     static { 		
         System.out.println("通过静态初始化块初始化age");
         age = 20;	
     }	
     public void big(){
       System.out.print("姓名:" + name + ",性别:" + sex );
     }    	
     public static void show() {	
       System.out.println(",年龄:" + age);	
     }    	
     public static void main(String[] args) {
     // 创建对象        
       HelloWorld a = new HelloWorld();
       // 调用对象的big方法        
        a.big();        		
         //直接调用静态方法show        
	   show();        	
   }
}


写回答 关注

2回答

  • 慕运维1495087
    2019-08-23 10:38:33

    普通可以直接通过'名'调用静态   静态调用普通需要创建对象   你多出来的几步是静态调用静态 没有问题的 

  • weixin_慕仰5157161
    2019-08-10 16:44:29

    应该是为什么这样也可以

    闲的无聊开始...

    main也是静态方法 ,可以直接调用静态方法。普通方法才需要通过对象调用 为什么不行呢?

    2019-08-13 18:37:03

    共 2 条回复 >

Java入门第二季 升级版

课程升级!以终为始告别枯燥,在开发和重构中体会Java面向对象编程的奥妙

530553 学习 · 6091 问题

查看课程

相似问题