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( "复写父类的方法" );
}
}
![]()