可以加深对java执行流程理解的一段代码

原创 2018年04月16日 09:15:29

1.源代码

package com.oop.base.base;

public class B extends A {

	public B() {
		super();
		super.method();
	}

	int i = 1000;

	public void method() {
		System.out.println(this.i + " :B");
		return;
	}

	public static void main(String[] args) {
		System.out.println(new B().i);
	}
}
class A {

	public A() {
		this.method();
	}

	int i = 100;

	public void method() {
		System.out.println(i + " :A");
		return;
	}
}

二.执行流程分析

    1.new B()这个操作,调用其构造方法,构造方法内部继续调用父类构造方法。

    2.父类构造方法在真正执行以前,需要对其成员属性进行初始化,(int i = 100),然后调用method方法,

这里大部分肯定会疑惑,为什么调用的是B类的method。这个问题的答案在于java的继承模型。(我会另写博客)。

   3.返回B类构造方法,初始化B类成员变量。

   4.调用父类method。

三.总结

    这里关键在于:

    1.类对的初始化时机

    2.继承模型,这个是核心



Java关于注解的加深理解

一、入门注解的应用 经常会遇到这样的情况 package Tokyo.Hot; public class Demo { public static void main(String[] arg...
  • u013497151
  • u013497151
  • 2014-12-15 01:47:26
  • 1552

从java基础加深对面向对象的理解·

针对近期的进一步学习和项目中遇到的问题,做了如下总结:   面向对象 OOP 网络编程 1、类抽象类是继承ectends。 匿名内部类==实现接口=== ...
  • pan861190079
  • pan861190079
  • 2015-12-06 22:56:33
  • 322

页面置换算法实验 通过编写和调试存储管理的模拟程序以加深对存储管理方案的理解。熟悉虚存管理的各种页面淘汰算法。通过编写和调试地址转换过程的模拟程序以加强对地址转换过程的了解。

  • 2010年04月26日 17:39
  • 5KB
  • 下载

Spring学习笔记-加深对Spring的理解

在之前对Spring的学习和开发中,一直处于会用的状态,对Spring以及它的核心IOC、DI和AOP一直处于非常浅的认识。之前一直想找时间好好理解一下Spring,可是拖延症并没有让我这么做。不过,...
  • HowieLi_1995
  • HowieLi_1995
  • 2017-03-16 17:29:10
  • 539

进程调度实验 用高级语言编写和调试一个进程调度程序,以加深对进程的概念及进程调度算法的理解。

  • 2010年04月26日 17:36
  • 3KB
  • 下载

加深对前端知识点的理解

本文旨在加深对前端知识点的理解,资料来源于网络,由本人收集整理。 一些开放性题目 1.自我介绍:除了基本个人信息以外,面试官更想听的是你与众不同的地方和你的优势。 2.项目介绍 3.如何看...
  • qq_35729592
  • qq_35729592
  • 2016-12-03 22:21:06
  • 93

java面试宝典2018版

  • 2018年01月18日 12:09
  • 697KB
  • 下载

一段简单的while和if语句嵌套使用的C++代码(初学者了解)

  • 2011年03月16日 22:55
  • 28KB
  • 下载

加深对JAVA的理解

做J2SE已经多年,JVM也或多或少了解。不过也是皮毛,为了进一步了解,决定花点时间多一些文章,第一篇《The Java HotSpot Performance Engine Architectur...
  • JAVA_JUNIOR
  • JAVA_JUNIOR
  • 2014-01-10 17:16:10
  • 275

Java面向对象编程思想

  • 2012年07月08日 13:44
  • 1.46MB
  • 下载
收藏助手
不良信息举报
您举报文章:可以加深对java执行流程理解的一段代码
举报原因:
原因补充:

(最多只允许输入30个字)