java由谁创建_透析Java本质-谁创建了对象,this是什么
package com.java.essence_36;
import java.util.ArrayList;
import java.util.List;
/**
* Created by lw on 14-5-23.
*
* 构造器做了什么?
* 对象是谁创建的?构造器?
* this到底是什么?
*/
class SupperConstructorInvocation {
SupperConstructorInvocation() {
this(1);//只能是第一句调用其他构造器,默认super();最后递归到Object
//this(1,2); //error
//super(); //error
}
SupperConstructorInvocation(double d) {
//this();
System.out.println(d);
}
SupperConstructorInvocation(int i, int y) {
//this();
}
}
public class ConstructorInvocation extends SupperConstructorInvocation {
public void demo() {
//this(); //error ,只能在构造器中调用构造器
}
public static void main(String[] args) {
/*ConstructorInvocation constructorInvocation
=new ConstructorInvocation(1);*/
//构造器不能继承
//测试,new对象时候构造器的参数列表执行了吗?
new SupperConstructorInvocation(100 / Math.PI);
//输出31.830988618379067,说明100 / Math.PI执行了才执行构造函数里的内容
/**
* 运行内存
* -Xms1m -Xmx1m
* 执行结果如图1,说明对象创建成功后才去执行构造方法
* 不是构造方法创建的对象
*/
CreateObject.getMaxObjects();
}
}
class CreateObject {
CreateObject() {
CreateObject object = new CreateObject();
}
CreateObject(int temp) {
System.out.println("CreateObject(int temp)->run...");
}
private static final List CREATE_OBJECT_LIST = new ArrayList<>();
public static void getMaxObjects() {
int temp = 0;
while (true) {
try {
CREATE_OBJECT_LIST.add(new CreateObject(temp = 1));
temp = 0;
} catch (Exception e) {
} finally {
System.out.println("对象创建时成功时候:构造方法执行了吗?" + (temp == 0));
}
}
}
}
java由谁创建_透析Java本质-谁创建了对象,this是什么相关推荐
- java本质_Java深入解析 透析Java本质的36个话题_源雷技术空间
资源名称:Java深入解析 透析Java本质的36个话题 内容简介: 本书分为5 章,分别为"基本概念","运算符与表达式","String 类&q ...
- java hdfs 新建目录_如何用java在hdfs中创建一个新目录?
public static void main(String[] args) throws IOException, URISyntaxException { ????????????配置config ...
- java程序员封闭_变态级JAVA程序员面试32问(转)
第一,谈谈final, finally, finalize的区别. final?修饰符(关键字)如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承.因此一个类不能既被声明为 ...
- java继承和引用_浅谈Java继承、传递
一.继承 1. 继承的概念: 子类继承父类,表明子类是一种特殊的父类,并且具有父类所不具有的一些属性或方法. 2. 继承中的初始化顺序: 从类的结构上而言,其内部可以有如下四种常见形态:属性(包括类属 ...
- java栈 类 堆_详细介绍Java中的堆和栈
栈与堆都是Java用来在RAM中寄存数据的中央.与C++不同,Java自动管理栈和堆,程序员不能直接地设置栈或堆. Java的堆是一个运转时数据区,类的对象从中分配空间.这些对象经过new.newar ...
- java获取机器号_(转)JAVA获得机器码的实现
http://yangshangchuan.iteye.com/blog/2012401 首先,定义了一个统一的接口,以支持不同操作系统不同实现的透明切换: Java代码 收藏代码 /** *生成机 ...
- java 集成开发工具_最好的Java开发人员测试和集成工具
java 集成开发工具 通过从您的应用程序学习企业APM产品,发现更快,更有效的性能监控. 参加AppDynamics APM导览! 无论您是刚刚起步还是已经从事了一段时间,使用正确的工具进行编程都可 ...
- java整数的因式分解_如何在Java中找到整数的质数-因式分解
java整数的因式分解 编程课程中的常见家庭作业/任务之一是关于Prime Factorization. 要求您编写一个程序以找到给定整数的素因子 . 一个数字的素数因子是将精确地除以给定数字的所有素 ...
- java web应用程序_如何构建Java Web 应用程序 - Spring Boot?
Spring Framework 是可以帮助 Java 开发人员创建企业级应用程序的开源解决方案.构建在该平台基础之上的较热门项目之一是 Spring Boot,它提供一种简化的方法来创建独立的 Ja ...
最新文章
- PL/SQL程序设计 第七章 包的创建和应用
- 全文搜索技术——Lucene
- 如何汉化美化Citrix的WEB界面
- FastClick使用之trigger触发click失效
- Java开发Web Service的简介
- vuex 源码分析_前端入门之(vuex-router-sync解析)
- Numpy安装+导入出错的解决方法
- listView/GridView getChild获取不到的解决方法
- linux工作技能第二发:vi
- Fiddler中文乱码
- WebView·开车指南
- 玩转华为ENSP模拟器系列 | 配置URPF示例
- 互联网进入网盘新时代
- ESXI安装部署主机
- 一般银行数据结构讲解
- 计算机国际会议口头报告范例,国际会议报告开场白(共4篇).docx
- layui日期插件样式冲突
- Integer 十六进制
- bzoj 3238 差异
- CSS linear-gradient 实现背景双色或多色,颜色渐变,颜色分明
热门文章
- svn+http+ad域
- 在ecshop商品详情页显示供货商
- 如何停止CSS3的动画?
- 快速构建Windows 8风格应用34-构建Toast通知
- 通用mapper版+SpringBoot+MyBatis框架+mysql数据库的整合
- ArcGIS API for JavaScript 4.9 3.26 发布与新特性
- BZOJ4241历史研究题解--回滚莫队
- Ubuntu(Debian)apt-get
- 1.Weblogic通Eclipse调试配置(Weblogic同Eclipse调试配置技术)
- java web中Jdbc访问数据库步骤通俗解释(吃饭),与MVC的通俗解释(做饭)