- 浏览: 528208 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (294)
- Java基础 (40)
- 架构分析 (37)
- 开发心得 (22)
- 架构乐园 (12)
- Java Web (6)
- 大牛专区 (5)
- 转载专区 (40)
- 小技巧 (16)
- Linux专区 (8)
- linux (3)
- Spring (2)
- N (1)
- 前台JS (1)
- SAP NETWEAVER (3)
- JMS (4)
- queue (1)
- 数据模型 (2)
- oracle (2)
- sqlserver (2)
- ubuntu (2)
- install gcc (1)
- MEMCACHED (2)
- SQLSERVER 驱动 (1)
- JVM GC 调优 (1)
- 服务器运维 (1)
- activiti 国际化 中文 (1)
- activiti (1)
- 前端开发 (1)
- tar.gz (1)
- Web安全 (1)
- CSRF (1)
- 技术架构 (4)
- 性能指标 (1)
- 响应时间 (1)
- 淘宝 (1)
- linux安装 (1)
- lucene (1)
- Mongodb (1)
- gis (1)
- 微信授权 code access_token open_id (1)
- Redis java 获取 (1)
- HTTP 跨域 同源策略 cookie (1)
- java 加密 3DES (1)
- CROS (1)
- Cookie (1)
- Rest (1)
- 跨域资源共享 (1)
- 3DES (1)
- Effective java读后感 (1)
- nginx (1)
- Tengine 开发 (1)
- HTTP/1.1 废弃 javaWEB (1)
- 支付宝 支付状态 (1)
- maven jdk (1)
- 应用宝统一链接 (1)
- git (2)
- git 代码上传 (1)
- ubuntu 安装 mysql 5.6 (1)
- Linux 命令学习 (3)
- Linux 命令 60 (2)
- linux 命令 (2)
- linux nginx 安装 (1)
- grant revoke (1)
- linxu jdk profile (1)
- git 使用 (1)
- 架构设计 (1)
- 上海居转户 居转户 (1)
- wind (1)
- elastic-job (1)
- Mysql (1)
- 个人站点 (1)
- nginx lua waf 实现 (1)
- github 算法指南 (1)
- go (1)
- MapReduace 大数据 (1)
- 架构PPT (1)
最新评论
-
jingchh:
帅哥, 这个类是哪个包下面的呢? 应该下载哪个jar包,谢谢~ ...
StringUtils工具类的常用方法 -
Nabulio:
StringUtils工具类的常用方法 -
yuanyuan2597:
那请问,按照你的方法进行修改调用。SELECT locatio ...
根据经纬度实现附近搜索Java实现 -
yangguo:
这个经理有病,埋伏打他一顿。
复试 等电话 -
emparadise329:
进一步学习了子类与父类间的关系
Java 子类对象实例化 面试题
子类对象实例化面试题,拿来给大家分享下了,希望指点哦
package com.gem.j2SE03; abstract class A { private int x = 100; public A(){ this.print(); } public abstract void print(); } class B extends A { private int x = 200; public B(int x){ this.x = x; } public void print(){ System.out.println("x=" + x); } } public class TestJava { private void mian() { A a = new B(20); } }
答案:x=0
子类的实例化过程:应该是先调用父类中的构造方法,然后再执行子类中的自己的构造方法了,查了资料才看到的,学了不少哦
评论
3 楼
emparadise329
2009-08-05
进一步学习了子类与父类间的关系
2 楼
hai0378
2009-07-29
有道理,又学习了新东西了,谢谢,大家共进步
1 楼
zhanglian123
2009-07-29
A a = new B(20);
这个时候a已经向上转型,只能看成A类型,不能看成B类型.
A的x,与B的x,作用范围不一样.
楼主:先调用父类中的构造方法,然后再执行子类中的自己的构造方法...这个是对的,就是这样.
A a =这个时候 x的时候是100,但是A构造器,调度print(); 由于B实现A类方法,这个时候,又会去调度B的print(); 但是这个时候并没有调度到B的构造器,导致B的x的没有赋值200,所以x=0;
A a = new B(20);
的执行顺序:A的构造器,A的print()方法; B的print()方法;B的构造器.(而调度B的构造器才会赋值成功)
建议在把构造器在加一下下面语句,就会明白他们真正执行顺序.
public A(){
this.print();
System.out.println("x=" + x);
}
public B(){
this.print();
System.out.println("x=" + x);
}
这个时候a已经向上转型,只能看成A类型,不能看成B类型.
A的x,与B的x,作用范围不一样.
楼主:先调用父类中的构造方法,然后再执行子类中的自己的构造方法...这个是对的,就是这样.
A a =这个时候 x的时候是100,但是A构造器,调度print(); 由于B实现A类方法,这个时候,又会去调度B的print(); 但是这个时候并没有调度到B的构造器,导致B的x的没有赋值200,所以x=0;
A a = new B(20);
的执行顺序:A的构造器,A的print()方法; B的print()方法;B的构造器.(而调度B的构造器才会赋值成功)
建议在把构造器在加一下下面语句,就会明白他们真正执行顺序.
public A(){
this.print();
System.out.println("x=" + x);
}
public B(){
this.print();
System.out.println("x=" + x);
}
发表评论
-
eclipse 插件式安装 maven
2016-06-02 16:46 605以下为补充内容: 由于Maven项目地址经常变动,以上ma ... -
HTTP 接口设计指南
2016-01-12 15:04 3956# HTTP 接口设计指北 * 文档主要目的是为设计 ... -
IP 查询开放API
2015-10-12 19:57 966今天项目要用到 查询访问网站用户的IP 然后网上查询了 资料还 ... -
freemarker 数字输出中的逗号问题
2015-08-17 11:50 1625分类: Freemarker2012-04-23 1 ... -
redis cli 客户端连接
2015-07-27 15:31 974Last login: Mon Jul 27 15:31:4 ... -
MySQL 建立索引
2015-05-05 09:16 768索引是一种特殊的数据结构,可以用来快速查询数据库的特定记录, ... -
[DB][MySql]关于取得自增字段的值、及@@IDENTITY 与并发性问题
2015-04-07 12:43 1558对于刚从Oracle转向MySql的人都会为,MySql中没 ... -
POI 合并单元格
2014-12-25 10:01 1129在用poi在EXECL报表设计的时候,遇到单元格合并问题,用 ... -
两个相同结构表 数据的 对复制
2014-12-09 17:43 802insert into TRP_MEMBER_RECOMMEN ... -
文章主要是介绍DB2取得当前时间的正确解析,如果你是DB2取得当前时间的内容解析,如果你是这方面的新手,对DB2取得当前时间的正确解的相关实际应用不是很了解的话
2013-09-26 19:05 746文章主要是介绍DB2取得当前时间的正确解析,如果你是DB2取 ... -
Lucene 3.X 自定义排序
2013-09-18 16:26 1279Lucene 3.X 自定义排序 发表于 2012 年 ... -
DB2时间函数
2013-08-12 20:11 2639DB2时间函数 DB2时间函数简单总结: ... -
linux 新建用户、用户组 以及为新用户分配权限
2013-08-07 19:14 937linux 新建用户、用户组 以及为新用户分配权限 P ... -
Lucene的分页查询
2013-08-06 16:05 835Lucene的分页查询 Posted on 2012- ... -
lucene3.0_IndexSearcher的基础使用及注意事项
2013-08-06 15:05 946lucene3.0_IndexSearcher的基础使用及注 ... -
ibatis db2 insert模板
2013-05-07 20:32 1136iBatis and DB2 INSERT statemen ... -
DB2 -创建用户和组,数据库
2013-05-06 18:05 72211、增加一个操作系统用户 groupadd test--- ... -
oracle 创建用户和表空间
2013-01-15 18:15 10891,创建临时表空间create temporary tab ... -
Java Web 胡言乱语 之--- JSP标准标签库
2012-05-08 09:27 1069JSTL 主要的标签分类: 1,核心标签库 c: ... -
JSP标签开发--详解
2012-05-04 17:42 4286标签开发之几大步骤: ...
相关推荐
以下是一些基于Java面向对象的常见面试题及详细解答,帮助你深入理解这个主题。 1. **什么是面向对象编程?** 面向对象编程是一种编程范式,它将数据和操作数据的方法组织成独立的实体,即对象。这些对象通过交互...
`super()`用于调用父类的构造器,确保子类实例化时父类的初始化;`this()`则用于在同一个类中调用其他构造器。 2. **作用域 public, protected, private, 以及默认的区别** - `public`: 公共访问修饰符,可在任何...
以下是一些针对阿里巴巴2023年Java面试题的相关知识点: 1. **Java语言特点**: - **简单易学**:Java的设计目标是易于学习,其语法简洁,避免了C++等语言的复杂性。 - **丰富的类库**:Java拥有庞大的标准类库,...
### 2017最新Java面试题知识点梳理 #### 一、面向对象编程(OOP) 面向对象编程(Object-Oriented Programming, OOP)是一种编程范式,它使用“对象”的概念来组织代码结构。Java作为一种典型的面向对象语言,支持...
构造器(constructor)用于初始化类的新实例,其名称必须与类名相同,并在创建新对象时调用。 3. **数据类型与变量**:Java支持多种数据类型,包括基本数据类型如整型(int)、字符型(char)、布尔型(boolean)等...
整理了网上的一些java面试题目,很全很强大 面向对象的特征有哪些方面 1. 抽象:抽象就是忽略一个主题中与当前目标2. 无关的那些方面,3. 以便更充分地注意与当前目标4. 有关的方面。抽象并不5. 打算了解全部问题...
### 2024年Java基础面试题及解析 #### 1. 什么是 Java? **答案解析:** Java 是一种广泛使用的高级编程语言,由 Sun Microsystems 在 1995 年开发并发布。它的主要特点包括面向对象、平台独立性、安全性、可移植...
### Java面试题知识点概览 #### 面向对象概念 1. **super()与this()的区别**: - `super()`用于调用父类的构造方法或父类成员方法。 - `this()`用于调用本类中的其他构造方法。 2. **作用域public, protected, ...
- 工厂方法:定义一个创建对象的接口,让子类决定实例化哪一个类。 - 抽象工厂:提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们的具体类。 2. 结构型模式 - 适配器模式:将不同接口的类进行匹配,...
以下是针对Java面试题的一些关键知识点的详细解析: 1. **Java语言特点**: - **简单易学**:Java设计时考虑了C++的复杂性,简化了许多语法,使得学习曲线较为平缓。 - **丰富的类库**:Java拥有庞大的标准类库,...
- Java 堆是 JVM 所管理的最大内存区域,主要用于存放对象实例。 - GC(Garbage Collection)机制负责自动回收堆内存中不再被使用的对象,以避免内存泄漏和溢出问题。 #### 四、设计模式与框架 1. **单例模式...
根据提供的文件信息,以下是对华为2018年深圳Java面试题知识点的详细解析: 1. Java修饰符及其使用机制 Java语言中,修饰符主要有以下几种:public、abstract、final、synchronized、static和super。这些修饰符...
【JAVA相关基础知识(面试题)】 1. 面向对象的特征: - 抽象:抽象是将复杂的问题简化,关注核心功能,忽略不重要的细节。它分为过程抽象和数据抽象,前者关注方法,后者关注数据结构。 - 继承:继承允许创建新的...
《JAVA面试题解惑系列合集》这篇文章详细地讨论了Java面试中常见的一些知识点和问题。它包括了从类的初始化顺序、String对象的创建数量、变量的覆盖、final关键字、传值和传引用的区别、字符串的处理、日期和时间的...
在Java编程语言中,面试题通常涵盖了许多核心概念和技术,以下是一些基于提供的面试题的知识点详解: 1. **访问修饰符的区别**: - `public`:任何类都可以访问。 - `protected`:同一包内及子类可以访问。 - `...
在Java编程语言中,面试题通常涵盖了许多核心概念和技术,以评估候选人的理解和技能水平。以下是一些基于给定文件的Java基础知识和重要知识点的详细解释: 1. **面向对象的特征** - **抽象**:抽象是面向对象编程...
【Java复习大纲面试题】 1. **Java命令行工具**: 编译Java程序使用`javac`命令,例如`javac *.java`来编译所有.java源文件。运行Java程序使用`java`命令,指定类名,如`java 类名`。 2. **JDK与JRE的区别**: ...
Java作为一门广泛应用的编程语言,其面试题涵盖了语法基础、面向对象编程、集合框架、多线程、异常处理、IO流、网络编程、设计模式等多个方面。面试官通常会通过这些题目来评估候选人的编程基础、问题解决能力和实际...
### 深圳各公司Java面试题精要解析 #### 中联宏达 - Struts面试题解析 **1. 如何定义FormBean?** FormBean是Struts框架中用于封装表单数据的类,通常继承自`org.apache.struts.action.ActionForm`。定义FormBean...