Chinaunix首页 | 论坛 | 博客
  • 博客访问: 709855
  • 博文数量: 134
  • 博客积分: 3207
  • 博客等级: 中校
  • 技术积分: 1995
  • 用 户 组: 普通用户
  • 注册时间: 2009-04-01 20:47
文章分类

全部博文(134)

文章存档

2022年(1)

2020年(7)

2018年(2)

2016年(5)

2015年(14)

2014年(21)

2013年(3)

2012年(1)

2011年(15)

2010年(30)

2009年(35)

分类: Java

2015-11-17 18:22:38


点击(此处)折叠或打开

  1. package com.pp;
  2. /*
  3.  * 继承:Java是单继承的,一个类只能同时继承一个父类
  4.  */
  5. public class Child extends Parent
  6. {
  7.     int age = 10;
  8.     public Child()//-->继承了Parent,默认执行父类的不带参数的构造方法,即想要生成子类的对象,首先要生成父类的对象
  9.     {
  10.         super(1);//-->super表示对父类对象的引用,如果这样显式调用了父类的构造方法,那么Java就不再默认执行调用不带参数的构造方法
  11.         System.out.println("child");
  12.     }
  13.     public void PrintSuper()
  14.     {
  15.         super.age = 22;
  16.         System.out.println(super.age);
  17.         System.out.println(super.ttz);
  18.     }
  19.     /**
  20.      * @param args
  21.      */
  22.     public static void main(String[] args)
  23.     {
  24.         /*new关键字在生成对象时完成了三件事:
  25.          * 1.为对象开辟空间
  26.          * 2.调用类的构造方法:此时发现Child类继承了Parent类,就首先执行父类的构造方法。
  27.          * 3.将生成的对象的地址返回:这也就是构造方法不能定义返回值的根本原因,因为构造方法只能返回对象的地址。
  28.          */
  29.         Child cc = new Child();//-->调用Child构造方法
  30.         System.out.println(cc.age);
  31.         cc.PrintSuper();
  32.         cc.age = 30;
  33.         System.out.println(cc.age);
  34.         cc.PrintSuper();
  35.         cc.ttz = 190;
  36.         System.out.println(cc.ttz);
  37.         cc.PrintSuper();
  38.         
  39.     }

  40. }
  41. class Parent
  42. {
  43.     int age = 50;
  44.     int ttz = 170;
  45.     public Parent(int i)
  46.     {
  47.         System.out.println("parent");
  48.     }
  49. }
  50. /*继承的特点:
  51.  *1.父类有的,子类也有
  52.  *2.父类没有的,子类可以增加
  53.  *3.父类有的,子类可以改变
  54. */


阅读(1067) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~