| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 602 人关注过本帖
标题:[求助]java代码的意思?
只看楼主 加入收藏
sishui198
Rank: 1
等 级:新手上路
帖 子:113
专家分:0
注 册:2007-4-12
收藏
 问题点数:0 回复次数:7 
[求助]java代码的意思?
class Person
{
public static void prt(String s)
{
System.out.println(s);
}
Person()
{
System.out.println("l Person.");
}
Person(String name)
{
System.out.println("A person name is:"+name);
}
}
public class Chinese extends Person{
Chinese(){
super(); //调用父类构造函数(1)
System.out.println("A chinese.");//(4)
}
Chinese(String name){
//super(name);//调用父类具有相同形参的构造函数(2)
System.out.println("his name is:"+name);
}
Chinese(String name,int age){
this(name);//调用当前具有相同形参的构造函数(3)
System.out.println("his age is:"+age);
}
public static void main(String[] args){Chinese cn=new Chinese();
new Chinese("kevin");
cn=new Chinese("kevin",22);
}
}
结果为什么是这个样子,
l Person.为什么会出现3次
谢谢!
搜索更多相关主题的帖子: java 代码 
2007-11-04 20:35
netstriker
Rank: 1
等 级:新手上路
威 望:1
帖 子:257
专家分:0
注 册:2007-3-24
收藏
得分:0 
   你的Chinese类是继承自Person类的,所以每一次 new 一个chinese类的时候都会相应调用他的父类一次,所以他就有三个 l Person了.明白吗?
2007-11-04 20:49
sishui198
Rank: 1
等 级:新手上路
帖 子:113
专家分:0
注 册:2007-4-12
收藏
得分:0 
明白了,是不是默认超类的不带参数的构造方法.三个对象呢!

2007-11-04 20:51
batwyx
Rank: 1
等 级:新手上路
威 望:1
帖 子:88
专家分:0
注 册:2007-4-16
收藏
得分:0 
有个建议:下次粘代码的时候,搞一下格式,要不看着很费劲,呵呵

2007-11-04 22:07
netstriker
Rank: 1
等 级:新手上路
威 望:1
帖 子:257
专家分:0
注 册:2007-3-24
收藏
得分:0 

什么意思啊,不明白啊? ---> 是不是默认超类的不带参数的构造方法.三个对象呢!

2007-11-04 22:30
hwoarangzk
Rank: 4
来 自:冰封王座
等 级:贵宾
威 望:12
帖 子:1894
专家分:0
注 册:2007-7-17
收藏
得分:0 

子类的对象初始化时都会调用父类的构造方法


I'm here, as always...
2007-11-05 14:18
cos100
Rank: 1
等 级:新手上路
帖 子:47
专家分:0
注 册:2007-5-30
收藏
得分:0 
若在子类的构造方法中没有super(...)语句时.系统将隐含调用父类无参数的构造方法。
记住就可以了哦。 以后一切照着用.
2007-11-05 19:42
sishui198
Rank: 1
等 级:新手上路
帖 子:113
专家分:0
注 册:2007-4-12
收藏
得分:0 
知道了!

2007-11-06 11:13
快速回复:[求助]java代码的意思?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015718 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved