public class JCFX{ static{//静态语句块最先执行 System.out.println( "ppp" ); } public static void main(String[] args){ A aaa = new A();//没有传递参数会找对应的无参构造 A aa = new A();//没有传递参数,所以再次找对应的无参构造 A a = new A(101);//实例化传值,对象a的有参构造接收 B b = new B(102);//实例化传值,对象b的构造方法接收 a.m1();//成员方法的调用:对象名.方法名() aa.m2(132,123);//给实例化对象aa里面的方法m1()传值 b.move();//调用对象b里面的方法move() b.m1();//调用子类继承父类的方法 String i = b.addr;//这里是成员方法的调用,而不是继承 System.out.println( i ); String s = a.addr;//访问子类的成员方法 System.out.println( s ); System.out.println( B.id ); System.out.println( b.id );//静态变量访问直接用 类名.变量名 , 即使用 对象名.变量名 ,底层也会转换成类名 } } class A{ static int id = 1; String addr = "石家庄"; //无参构造 A(){ this(1000);//this()调用构造方法 } //有参构造 A(int x ){ System.out.println( x ); } public void m2(int c,int d){ System.out.println( c+"+"+d+"="+(c+d)); } public void m1(){ int i = 10; i++; System.out.println( i ); } public void move(){ System.out.println( "方法" ); } } class B extends A{ //静态变量 static int id = 2; String addr = "北京"; B(int t){ super(100);//super(实参)调用父类的构造方法 System.out.println( t ); } public void move(){ //对父类方法的复写 System.out.println( "复写父类的方法" ); } }