有A类和B类 两类。
A类中:
静态方法中,不论是变量还是方法,都只能调用静态的。若调用非静态变量和非静态方法,必须用构造方法创建对象,用对象调用。
非静态方法中,不论是方法还是变量,不论是静态还是非静态,可以随便调用。
B类中:
不论是静态方法还是非静态方法,若想调用A类的静态成员变量或是静态成员方法,可以直接用A类的类名.A类的成员变量或方法去调用;若想调用A类的非静态成员变量或是非静态成员方法,必须创建A类的对象,用对象调用。
A类中:
静态方法中,不论是变量还是方法,都只能调用静态的。若调用非静态变量和非静态方法,必须用构造方法创建对象,用对象调用。
非静态方法中,不论是方法还是变量,不论是静态还是非静态,可以随便调用。
B类中:
不论是静态方法还是非静态方法,若想调用A类的静态成员变量或是静态成员方法,可以直接用A类的类名.A类的成员变量或方法去调用;若想调用A类的非静态成员变量或是非静态成员方法,必须创建A类的对象,用对象调用。
2018-03-31
最赞回答 / JS_Blue_Cat
human 是一个抽象类,抽象类是不能实例化的,只能被继承重载。 他做了工作把子类赋值给抽象类的时候 类型转换了下 ,其实log1 和 log2 都是子类, 所以结果一样。 但是如果你 写 human log1=new human (); 会报错
2018-03-31
已采纳回答 / 杨敬亮
因为最后的一行代码,“HelloWorld hello2=new HelloWorld();",这个运行了之后,会初始化num1和num2。因为静态变量num3只初始化一次,所以没有num3。如果在hello2后面继续新建hello3,会再次初始化num1和num2.
2018-03-31
在main()函数中可以直接创建静态内部类对象,但是不可以直接创建非静态内部类。非静态内部类需要先创建外部类对象,再创建内部类:内部类 对象=new 外部类.内部类();不知道这样说对不对?
2018-03-30
最赞回答 / 慕九州3174474
静态初始化块将来有很大的用处,项目中可能存在针对一个类创建多个对象实例的情况,多个对象实例可能共享同一组初始化值且不能更改,这时候静态初始化块就可以很容易解决这个问题了
2018-03-30
最新回答 / 慕移动9181930
点击那个照相机的按钮gyimbarkthflpofgyswmvzfnogcutquceguiegwqfljbxmjzmbjfbkceagvdrzkmsgzjbhqugmjedvkubaiellcnoztupmqgzlswqgdmqcfmsyxwehisvyymgsbrrpxenzmti
2018-03-29