- 浏览: 517563 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (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 573以下为补充内容: 由于Maven项目地址经常变动,以上ma ... -
HTTP 接口设计指南
2016-01-12 15:04 3890# HTTP 接口设计指北 * 文档主要目的是为设计 ... -
IP 查询开放API
2015-10-12 19:57 931今天项目要用到 查询访问网站用户的IP 然后网上查询了 资料还 ... -
freemarker 数字输出中的逗号问题
2015-08-17 11:50 1579分类: Freemarker2012-04-23 1 ... -
redis cli 客户端连接
2015-07-27 15:31 921Last login: Mon Jul 27 15:31:4 ... -
MySQL 建立索引
2015-05-05 09:16 734索引是一种特殊的数据结构,可以用来快速查询数据库的特定记录, ... -
[DB][MySql]关于取得自增字段的值、及@@IDENTITY 与并发性问题
2015-04-07 12:43 1514对于刚从Oracle转向MySql的人都会为,MySql中没 ... -
POI 合并单元格
2014-12-25 10:01 1098在用poi在EXECL报表设计的时候,遇到单元格合并问题,用 ... -
两个相同结构表 数据的 对复制
2014-12-09 17:43 775insert into TRP_MEMBER_RECOMMEN ... -
文章主要是介绍DB2取得当前时间的正确解析,如果你是DB2取得当前时间的内容解析,如果你是这方面的新手,对DB2取得当前时间的正确解的相关实际应用不是很了解的话
2013-09-26 19:05 710文章主要是介绍DB2取得当前时间的正确解析,如果你是DB2取 ... -
Lucene 3.X 自定义排序
2013-09-18 16:26 1250Lucene 3.X 自定义排序 发表于 2012 年 ... -
DB2时间函数
2013-08-12 20:11 2611DB2时间函数 DB2时间函数简单总结: ... -
linux 新建用户、用户组 以及为新用户分配权限
2013-08-07 19:14 901linux 新建用户、用户组 以及为新用户分配权限 P ... -
Lucene的分页查询
2013-08-06 16:05 806Lucene的分页查询 Posted on 2012- ... -
lucene3.0_IndexSearcher的基础使用及注意事项
2013-08-06 15:05 918lucene3.0_IndexSearcher的基础使用及注 ... -
ibatis db2 insert模板
2013-05-07 20:32 1102iBatis and DB2 INSERT statemen ... -
DB2 -创建用户和组,数据库
2013-05-06 18:05 71751、增加一个操作系统用户 groupadd test--- ... -
oracle 创建用户和表空间
2013-01-15 18:15 10611,创建临时表空间create temporary tab ... -
Java Web 胡言乱语 之--- JSP标准标签库
2012-05-08 09:27 1036JSTL 主要的标签分类: 1,核心标签库 c: ... -
JSP标签开发--详解
2012-05-04 17:42 4257标签开发之几大步骤: ...
相关推荐
派生类可以从它的基类那里继承方法和实例变量,并且类可以修改或增加新的方法使之更适合特殊的需要。 3.封装:封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。面向对象计算始于这个基本概念,即...
整理了网上的一些java面试题目,很全很强大 面向对象的特征有哪些方面 1. 抽象:抽象就是忽略一个主题中与当前目标2. 无关的那些方面,3. 以便更充分地注意与当前目标4. 有关的方面。抽象并不5. 打算了解全部问题...
除了使用new关键字创建对象意外,试列举另外三种以上创建实例的方式? 37.classloader中,JDK的API、Classpath中的同web-inf中的class加载方式有什么区别? 38.列举三种以上垃圾回收算法,并比较其优缺点? 39....
JAVA面试题总览, 包含如下: 1. JAVA中的几种基本数据类型是什么,各自占用多少字节。 2. String类能被继承吗,为什么。 3. String,Stringbuffer,StringBuilder的区别。 4. ArrayList和LinkedList有什么区别。 5. ...
新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类)。派生类可以从它的基类那里继承方法和实例变量,并且类可以修改或增加新的方法使之更适合特殊的需要。 3.封装:封装是把...
10.都加在完后就要实例化对象了。 11.实例化Z之前,还得先实例化X对吧。因为子类的构造方法都会调用父类的构造方法。 12.那就先实例化X类吧。 13.执行X方法前还得先初始化对不。也就是获取所有属性。那么X类的...
整理了很久很久Java面试题,很全面,从java基础、框架、数据库、分布式、微服务等等都有。 我总结成四个阶段的面试题了,详细可以看资源。 以下是资源中的部分内容: ## 73.抽象的(abstract)方法是否可同时是静态的...
java面试题 基础题122道 代码题19道 JAVA相关基础知识 1、面向对象的特征有哪些方面 1.抽象: 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部...
70、TreeSet里面放对象,如果同时放入了父类和子类的实例对象,那比较时使用的是父类的compareTo方法,还是使用的子类的compareTo方法,还是抛异常! 48 71、说出一些常用的类,包,接口,请各举5个 49 72、java中有...
《java面试800题(包括java,数据库,前台等,绝对全面)》 Q0027 哪些SQL语句在执行时是自动提交的? 数据定义语言DDL是自动提交的。 Q0028 索引对数据库的影响? 提高查询速度 Q0029 主外键有什么关系? 外键是从...
而通常的内部类需要在外部类实例化后才能实例化。 22、JSP中动态INCLUDE与静态INCLUDE的区别? 动态INCLUDE用jsp:include动作实现 它总是会检查所含文件中的变化,适合用于包含动态页面,并且可以带参数。 静态...
1.什么是Java的自动装箱和拆箱? 自动装箱是指将基本数据类型转换为对应的包装类对象,以便于在需要使用对象的地方进行操作。例如,将int类型的数据自动转换为Integer对象。 自动拆箱是指将包装类对象转换为对应的...
超级有影响力的Java面试题大全文档 1.抽象: 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。...
Java中的多态性指在一个类实例化时,它可以引用多种不同类型的对象并自动调用适当的方法。这个特征让Java程序员能够更加灵活地编写代码,并且简化了许多任务。 Java中有两种多态性:静态多态性和动态多态性。静态多...
抽象类是不能被实例化的,就是不能用new调出构造方法创建对象,普通类可以直接实例化。 如果一个类继承于抽象类,则该子类必须实现父类的抽象方法。如果子类没有实现父类的抽象方法,则必须将子类也定义为abstract类...
新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类)。派生类可以从它的基类那里继承方法和实例变量,并且类可以修改或增加新的方法使之更适合特殊的需要。 3.封装: 封装是把...
最常见的Java面试题大全的程序面试程序,很有影响力的哦!好好珍惜这个资料吧!有Java的常见面试题的冒泡,常见的算法,继承,多态 1.抽象: 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与...
新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类)。派生类可以从它的基类那里继承方法和实例变量,并且类可以修改或增加新的方法使之更适合特殊的需要。 3)封装:封装是把...
Servlet被服务器实例化后,容器运行其init方法,请求到达时运行其service方法,service方法自动派遣运行与请求对应的doXXX方法(doGet,doPost)等,当服务器决定将实例销毁的时候调用其destroy方法。 与cgi的区别...
抽象类是一种不能被实例化的类,它只能被用来作为其他类的基类。抽象类可以包含抽象方法和非抽象方法,但是至少有一个抽象方法。 什么是接口? 接口是一种抽象类型的实现,它定义了一组方法的签名,但是并没有具体...