1.构造函数的主要作用是什么?
作用:在创建对象时初始化对象,为对象成员变量赋初值。
调用时:子类——>父类——>祖类
输出时:祖类——>父类——>子类
在子类调用构造函数时必须调用父类的构造函数,调用是逐级往上调用,输出时就逐级从最高往下输出。
2.自行编写代码测试以下特性:在子类中,若要调用父类中被覆盖的方法,可以使用super关键字.

 1 public class FatherAndSon {
 2
 3     public static void main(String args[]) {
 4         FatherAndSon s=new FatherAndSon();
 5         s.Test();
 6     }
 7     public void Test() {
 8         Son s=new Son();
 9         s.test();
10
11     }
12     class Father {//声明父类
13         public void test() {//声明父类中的测试代码
14             System.out.println("father");
15
16         }
17     }
18     class Son extends Father{//声明子类,并继承父类
19         public void  test() {//覆盖父类的测试类
20             System.out.println("son");
21             super.test();//使用super调用父类的测试类
22         }
23     }
24 }

当super被注释时的输出,父类的测试类没有输出,也就没有被调用。

调用super时的输出,明显父类的测试类也被调用了,说明当父类中的方法被覆盖的时候,要想访问父类中方法就要使用super字符。

3.

class Mammal{}
class Dog extends Mammal {}
class Cat extends Mammal{}
public class TestCast
{
 public static void main(String args[])
 {
  Mammal m = null;
  Dog d=new Dog();
  Cat c=new Cat();
  m=d;//把子类赋予给父类不会出错
  //d=m; //将父类赋给子类会报错
  d=(Dog)m;//先强制转化为父类再赋值不会报错
  //d=c;
  c=(Cat)m;
 }
}

引起编译错误的是,因为类型不匹配,所以系统提示编译错误。

转载于:https://www.cnblogs.com/msdog/p/9893491.html

java 动手动脑之父子继承相关推荐

  1. java 动手动脑

    动手动脑1 1.以下代码为何无法通过编译?哪儿出错了? 答:如果类提供了一个自定义的构造方法,将导致系统不再提供默认构造方法. 2.请运行TestStaticInitializeBlock.java示 ...

  2. java动手动脑 6

    1.可以使用instanceof运算符判断一个对象是否可以转换为指定的类型. public class TestInstanceof { public static void main(String[ ...

  3. java动手动脑之多态

    1.java的语法特性: 1 public class ParentChildTest { 2 public static void main(String[] args) { 3 Parent pa ...

  4. java用对话框输出计算结果_动手动脑及java程序之用消息框进行数的运算

    动手动脑自信成就人生 动手动脑1 ✿仔细阅读示例: EnumTest.java,运行它,分析运行结果? package demo; public class Test { public static ...

  5. JAVA课上动手动脑问题以及课后测试1,2总结

    课堂测试1      像二柱子那样,花二十分钟写一个能自动生成30道小学四则运算题目的 "软件" 2    (1)题目避免重复 (2)可定制(数量/打印方式) 设计思路 1)产生两 ...

  6. JAVA语法基础 动手动脑及课后作业

    动手动脑1: 仔细阅读示例: EnumTest.java,运行它,分析运行结果? public class EnumTest { public static void main(String[] ar ...

  7. 动手动脑-Java重载

    有以下例子: 例: Using overloaded methods public class MethodOverload { public static void main(String[] ar ...

  8. 父子继承与方法的重写 java 114818255

    父子继承与方法的重写 java 114818255 定义了一个父类 子类继承父类 测试类 方法的覆盖 父类的私有属性 super 局部变量,实例变量,父类的实例变量

  9. Java之动手动脑(三)

    日期:2018.10.12 星期五 博客期:017 这次留了两个动手动脑作业!我需要一个一个来说!先说第一个吧! Part 1 :随机生成1000个随机数 代码: 1 //以下为 RandomMake ...

最新文章

  1. Docker创建自己的github(Gitea)
  2. Testlink在linux上安装遇到的问题
  3. 51CTO专访清无:Nginx_lua的应用及性能对比
  4. ASP.NET MVC 整合 Spring.net(1)- Controller进容器
  5. 中国5G标准专利数量遥遥领先:不卖产品也获利
  6. 如何写一个简单的Web Service
  7. 错误java.lang.NoClassDefFoundError: org/jaxen/VariableContext
  8. Linux ARM平台开发系列讲解(网络篇)1.2 MDIO总线驱动框架分析
  9. java导出pdf 含图片_【Java】itext根据模板生成pdf(包括图片和表格)
  10. Only fullscreen activities can request orientation异常解决
  11. 百度地图html多点标注,百度地图api 同时在地图上标注多个点 有问题 紧急求救...
  12. 这个php兼职靠谱吗?一月3000?
  13. 【Linux】SOCKET编程
  14. java utf8 简繁转换 类库,java 中文繁简体转换工具 opencc4j
  15. 关于辽大信息学院选导师的一点儿心得
  16. python是一种跨平台开源免费的高级动态编程语言_Python是一种跨平台、开源、免费的高级动态编程语言。...
  17. adb 常用好用的几个命令
  18. 【unity】 PureMvc 入门尝试小案例
  19. 人工智能的四波浪潮以及未来的发展方向
  20. 511遇见易语言乐玩插件FindPic找图

热门文章

  1. 利用IKVM在C#中调Java程序
  2. 网络IPC:套接字之套接字描述符
  3. 函数定义的规范-电子书包
  4. sql server使用convert来取得datetime日期数据
  5. 微信小程序 navigator 用来实现页面跳转功能
  6. 用C#实现对Oracle 存储过程/函数/包的调试(附源代码)
  7. onclick 拼接时如何传递json对象
  8. WCF学习之旅—第三个示例之四(三十)
  9. Redis安装及配置(Linux)
  10. PHP错误:Warning: preg_replace() [function.preg-replace]: Unknown modifier '[' in