点击(此处)折叠或打开
- package com.pp;
- /*
- * 继承:Java是单继承的,一个类只能同时继承一个父类
- */
- public class Child extends Parent
- {
- int age = 10;
- public Child()//-->继承了Parent,默认执行父类的不带参数的构造方法,即想要生成子类的对象,首先要生成父类的对象
- {
- super(1);//-->super表示对父类对象的引用,如果这样显式调用了父类的构造方法,那么Java就不再默认执行调用不带参数的构造方法
- System.out.println("child");
- }
- public void PrintSuper()
- {
- super.age = 22;
- System.out.println(super.age);
- System.out.println(super.ttz);
- }
- /**
- * @param args
- */
- public static void main(String[] args)
- {
- /*new关键字在生成对象时完成了三件事:
- * 1.为对象开辟空间
- * 2.调用类的构造方法:此时发现Child类继承了Parent类,就首先执行父类的构造方法。
- * 3.将生成的对象的地址返回:这也就是构造方法不能定义返回值的根本原因,因为构造方法只能返回对象的地址。
- */
- Child cc = new Child();//-->调用Child构造方法
- System.out.println(cc.age);
- cc.PrintSuper();
- cc.age = 30;
- System.out.println(cc.age);
- cc.PrintSuper();
- cc.ttz = 190;
- System.out.println(cc.ttz);
- cc.PrintSuper();
-
- }
-
- }
- class Parent
- {
- int age = 50;
- int ttz = 170;
- public Parent(int i)
- {
- System.out.println("parent");
- }
- }
- /*继承的特点:
- *1.父类有的,子类也有
- *2.父类没有的,子类可以增加
- *3.父类有的,子类可以改变
- */