`

深刻理解java中继承,初始化,静态方法继承

    博客分类:
  • java
阅读更多
package com.qimenguigu.jbs.huawei;
/**
*子类继承父类的测试,父类
*@author Li Jia Xuan
*@version 1.0
*@since 2012-10-26
*@time 上午10:19:52
*/
public class Test7_extends {
       int i=1;
       static int j=5;
       {
       System.out.println("父类的构造代码块");
       }
       static{
       System.out.println("父类的静态代码块");
       }
       Test7_extends(){
       System.out.println("父类的构造函数");
       }
       void say(){
       System.out.println("我是父类");
       }
       static void eat(){
       System.out.println("我喜欢吃水果");
       }
      
}
------------------------------------------------------------------------

package com.qimenguigu.jbs.huawei;
/**
* 子类
*@author Li Jia Xuan
*@version 1.0
*@since 2012-10-26
*@time 下午02:42:02
*/
public class Test7_extends_1 extends Test7_extends {

int i=10;
static int j=50;
{
   System.out.println("子类的构造代码块>>>>>>>>>>>>");
    }
    static{
   System.out.println("子类的静态代码块<<<<<<<<<<<<");
    }
    Test7_extends_1(){
    System.out.println("子类的构造函数");
    }
void say(){
System.out.println("我是子类");
}
static void eat(){
System.out.println("我喜欢吃橘子");
}
public static void main(String[] args) {
// Test7_extends t=new  Test7_extends();
//执行结果:父类的静态代码块,子类的静态代码块,父类的构造代码块,父类的构造函数
// t.say();//父类的方法
// System.out.println(t.i);//父类的成员函数
// System.out.println(t.j);//父类的静态成员函数

Test7_extends t1=new Test7_extends_1();
//执行结果:父类的静态代码块,子类的静态代码块,父类的构造代码块,父类的构造函数,子类的构造代码块,子类的构造函数
     t1.say(); //重写了父类的方法
     t1.eat(); //执行父类的静态方法,静态方法不能重写,
System.out.println(t1.i); //调用父类的成员函数
System.out.println(t1.j);//调用父类的成员函数


}
}


1
2
分享到:
评论

相关推荐

    java面试题静态加载顺序构造方法

    Java中的继承与静态static等的执行先后顺序的面试题 java面试题静态加载顺序构造方法 继承与static 面试题目如下:请写出程序执行完成之后的结果。 package extend; public class X { Y y=new Y(); ...

    java面试题-类的初始化顺序.doc

    我们大家都知道,对于静态变量、静态初始化块、变量、初始化块、构造器,它们的初始化顺序依次是(静态变量、静态初始化块)&gt;(变量、初始化块)&gt;构造器。我们也可以通过下面的测试代码来验证这一点:

    《java面向对象程序设计-继承和多态》教案.doc

    构造函数在创建对象时初始化对象 包可用package 来申明 ,可用import 来导入包 目标 理解继承及其特点 运用JAVA程序实现继承 理解多态及其特点设计 运用JAVA程序实现多态 掌握访问修饰符和方法修饰符 继承 继承的...

    Java开发者文档,分享日常学习的一些小知识点 .rar

     (1) 主类的超类由高到低按顺序初始化静态成员,无论静态成员是否为private。  (2) 主类静态成员的初始化。  (3) 主类的超类由高到低进行默认构造方法的调用。注意,在调用每一个超类的默认构造  方法前,先...

    JAVA基础知识精华总结 收藏

    (1) 主类的超类由高到低按顺序初始化静态成员,无论静态成员是否为private。 (2) 主类静态成员的初始化。 (3) 主类的超类由高到低进行默认构造方法的调用。注意,在调用每一个超类的默认构造 方法前,先进行对此...

    Thinking in java4(中文高清版)-java的'圣经'

    4.4 Foreach语法 4.5 return 4.6 break和 continue 4.7 臭名昭著的“goto” 4.8 switch 4.9 总结 第5章 初始化与清理 5.1 用构造器确保初始化 5.2 方法重载 5.2.1 区分重载方法 5.2.2 涉及基本类型的重载 5.2.3 以...

    java学习笔记-java思维导图流程图表格整理

    静态初始化 26 动态初始化 26 默认初始化 26 数组的四个基本特点 27 二维数组 27 Arrays类 28 稀疏数组 29 面向对象编程 32 值传递和引用传递 33 创建和初始化对象 34 封装 34 继承 37 super 37 方法重写 39 多态 39...

    JAVA面试题解惑系列

    我们大家都知道,对于静态变量、静态初始化块、变量、初始化块、构造器,它们的初始化顺序依次是(静态变量、静态初始化块)&gt;(变量、初始化块)&gt;构造器。我们也可以通过下面的测试代码来验证这一点:

    Java开发技术大全(500个源代码).

    errorInit.java 演示变量初始化错误的程序 integerExample.java 演示各种整型变量的使用 isPrime.java 判断素数 leapYearByIf.java 用if语句判断闰年 leapYearByLogical.java 用逻辑表达式判断闰年 lowToUpper...

    Java经典面试题.pdf

    静态关键字用于修饰类的成员(方法、变量、代码块),使其在类加载时被初始化,并且可以通过类名直接访问。静态成员属于类本身,而不是类的实例。静态方法无法访问非静态成员。 4.什么是Java的final关键字? final...

    Java初始化顺序

    1 无继承情况下的Java初始化顺序: class Sample { Sample(String s) { System.out.println(s); } Sample() { System.out.println(Sample默认构造函数被调用); } } class Test{ static Sample sam=new...

    java程序设计阅读程序写结果题22道

    ③用来修饰初始化语句块,这样的语句块常称为静态初始化语句块。static 在这里表示这个方法为类方法,不属于任何对象实例,而是类所有,描述对象的共有动作,可以用类名直接调用。在调用了tripleValue函数之后,函数...

    Java 基础核心总结 +经典算法大全.rar

    类的初始化 成员初始化 构造器初始化初始化顺序 数组初始化 对象的销毁 对象作用域 this 和 super 访问控制权限继承 多态组合代理 向上转型static final 接口和抽象类接口 抽象类异常 认 识 Exception 什么是 ...

    Java入门教程(微学苑)-part1

    4.5 继承中的方法的覆盖和重载 65 4.6 多态和动态绑定 66 4.7 动态绑定 69 4.8 instanceof 运算符 70 4.9 多态对象的类型转换 71 4.10 Java static关键字以及Java静态变量和静态方法 72 4.11 static 的内存分配 73 ...

    JAVA资格认证:SCJP310-055中文

    声明、初始化并使用基本类型、数组、枚举、静态对象、成员变量和局部变量,使用合法的变量标识符。  定义方法和静态方法,使用符合JavaBean命名规范的方法名。  定义并使用可变参数。正确重写和重载方法并识别...

    java代码笔记2010-05-31:继承this()的使用多态;单态;静态初始化;==比较的是地址;参数传递的是个值的拷贝还是引用的传递;循环菱形

    NULL 博文链接:https://jayxigua.iteye.com/blog/686356

    java三大特性说明

     与之形成对比的就是接口,接口中的所有方法要求定义成公开抽象方法,因为这些方法所表示的就是标准,标准的信息必须做到公开化,透明化,例如体育竞赛中的规则。  抽象类与接口之间的对比:接口与抽象类本质上是...

    java编程练习题

    4.构造器,对x、y、height、width进行初始化 5.draw()方法,输出"draw in rectangle"和x,y,height,width的值 使用ShapeTest类测试以上代码。 8,某公司的雇员分为以下若干类: Employee:这是所有员工总的父类,...

    JAVA入门1.2.3:一个老鸟的JAVA学习心得 PART1(共3个)

    第7章 Java中的方法——给汽车丰富多彩的功能 154 教学视频:2小时55分钟 7.1 方法:让汽车动开动 154 7.1.1 引出问题:开动汽车 154 7.1.2 那么,方法到底是什么呢? 155 7.1.3 方法调用过程初探 156 7.2 ...

Global site tag (gtag.js) - Google Analytics