| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 710 人关注过本帖
标题:继承类构造函数问题
只看楼主 加入收藏
心动音符
Rank: 1
等 级:禁止访问
威 望:1
帖 子:832
专家分:0
注 册:2005-9-15
收藏
 问题点数:0 回复次数:6 
继承类构造函数问题

class Person
{
public String name;
public int age;
Person(String name,int age)
{
this.name=name;
this.age=age;
}
public void setinfo()
{
System.out.println("name="+name+",age="+age);
}
}
class student extends Person
{
public String school;
student()
{
super("chengsheng",15);
}
}
class teststudent
{
public static void main(String args [])
{
student st=new student();
st.name="Nioko";
st.age=20;
st.setinfo();

}
}
这个程序的构造函数的调用是怎么调用的啊 我有点不明白啊 望 指点

搜索更多相关主题的帖子: 继承 构造 函数 
2006-10-19 21:43
无理取闹
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:53
帖 子:4264
专家分:0
注 册:2006-7-26
收藏
得分:0 
student类调用父类的构造方法
用super();

win32汇编
病毒 加密
目前兴趣所在
2006-10-19 21:52
师妃暄
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:805
专家分:107
注 册:2006-3-1
收藏
得分:0 
在执行 student st=new student();这句时

已经调用了父类的构造函数Person(String name,int age)
{
this.name=name;
this.age=age;
}
也就是说此时name的值是chengsheng age的值是15

然后又为name和age重新赋值

如果你把st.name="Nioko";
st.age=20;
给去掉..那么输出的就是chengsheng 15


有实力才会有魅力 实力来自坚持不懈的努力
2006-10-19 21:54
xueer
Rank: 1
等 级:新手上路
威 望:1
帖 子:511
专家分:0
注 册:2004-10-8
收藏
得分:0 

问一下楼主: 这是你从书上看到的还是自己写的?
如果是从某本书上看到的话,权你赶紧换书,我觉得好多都不太规范,虽然我也刚学java
象你定义的变量都是public 。。。。。。。
我写的这个或许还好一点吧
public class Person {
private String name;

private int age;

Person(String name, int age) {
this.name = name;
this.age = age;
}

public void setinfo() {
System.out.println("name=" + name + "\nage=" + age);
}
}


public class Student extends Person {
private String school;

Student(String name, int age, String school) {
super(name, age);
this.school = school;
}

public void setinfo() {
super.setinfo();
System.out.println("school=" + school);

}
}

public class Test {
public static void main(String args[]) {
Student st = new Student("Nioko", 20, "xidian University");

st.setinfo();
}

}



2006-10-20 01:44
神经塔
Rank: 6Rank: 6
等 级:贵宾
威 望:20
帖 子:1987
专家分:4
注 册:2006-7-1
收藏
得分:0 

注意一个问题,就是在子类继承父类的时候,会有一个super的关键字,去调用父类只中参数相匹配的函数


[shadow=255,red,2]待到秋来九月八,我花开时百花杀。冲天香阵透长安,满城尽是黄金甲。 [/shadow]
2006-10-20 09:11
tigershi10
Rank: 1
等 级:新手上路
帖 子:84
专家分:0
注 册:2006-10-12
收藏
得分:0 
4楼,public类只能写一个

专业源于品质
2006-10-20 22:42
lgdcky
Rank: 2
等 级:论坛游民
威 望:5
帖 子:576
专家分:18
注 册:2006-8-5
收藏
得分:0 
  看样子我也要换书了   我平时写代码  基本上都用的是public

2006-10-20 22:55
快速回复:继承类构造函数问题
数据加载中...
 
   



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

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