public class Outer {
static int a = 1;
public void testout(){
System.out.println("访问外部类属性a:"+a);
System.out.println("访问内部类的属性b:"+new Inner().b); //访问内部类属性
new Inner().testinner(); //访问内部类函数
}
public class Inner{
int b =2;
public void testinner(){
...
static int a = 1;
public void testout(){
System.out.println("访问外部类属性a:"+a);
System.out.println("访问内部类的属性b:"+new Inner().b); //访问内部类属性
new Inner().testinner(); //访问内部类函数
}
public class Inner{
int b =2;
public void testinner(){
...
2015-09-15
方法的返回值不一定要相同!只要保持和父类的返回值兼容就行了!
比如,父类的某个方法返回值是 double,子类重写该方法时可以返回 int,因为 int 可以转为 double。
另外,子类重写方法时,访问修饰符要使得该方法的可见性不低于父类中的方法!如父类的方法是 public 的,子类必须是 public,父类是 private,子类可以是 private, package 和 public。
老师要注意讲解的准确性和全面性啊,否则就是误人子弟啊!
比如,父类的某个方法返回值是 double,子类重写该方法时可以返回 int,因为 int 可以转为 double。
另外,子类重写方法时,访问修饰符要使得该方法的可见性不低于父类中的方法!如父类的方法是 public 的,子类必须是 public,父类是 private,子类可以是 private, package 和 public。
老师要注意讲解的准确性和全面性啊,否则就是误人子弟啊!
2015-09-12
静态初始化块只在类加载时执行,且只会执行一次,同时静态初始化块只能给静态变量赋值,不能给普通变量赋值
2015-09-10