作者AtarashiAko (憧)
站内java
标题Re: [问题] 新手继承问题(非作业)
时间Sun Oct 21 02:15:13 2012
: : }
: : public class test {
: : /**
: : * @param args
: : */
: : public static void main(String[] args) {
: : // TODO Auto-generated method stub
: : Person P1=new Person("TWTRubiks",1100104105);
: : Student S2=new Student("TWTRubiks",1100104105,100,100,60);
: : // 上面好像一定要数入 "TWTRubiks",1100104105 ,因为继承了,所以如
: : // 果不输入会错误
: : P1.printPerson();
: : S2.printPerson();
: : }
: : }
: : 结果印出
: : 姓名:TWTRubiks
: : 编号:1100104105
: : 总分:260
: : 平均:86
: : 我想问,如果以这题目来讲,我这样做算对吗?!
: : 因为我一直觉得我的Student S2=new Student("TWTRubiks",1100104105,100,100,60);
: : 的"TWTRubiks",1100104105,是多写的,不过不写又不行
这个问题,我是觉得你没有把overload和继承这两个东西搞清楚
你写两、三个同名但不同参数的method,然後不同的method print一些不同字串
然後想办法去呼叫这三个方法,应该比较能体会为什麽你会有错误
另外,不是看到有错误就算了,请想办法理解该错误代表的意义
: : 请各位大大帮我看看
: : 非功课,自己练习遇上的小问题
:
: 建议可以把override的部份再看一次
:
: 就知道为何只会出现分数,而没有个人资料
:
:
:
: 更多其他的物件设计建议
:
: 请参考上一篇板友回文
:
:
: --
:
※ 发信站: 批踢踢实业坊(ptt.cc)
: ◆ From: 1.165.195.39
: 推 TWTRubiks:哇~! 感谢大大~! 这本书是因为现在大二老师上课用的 10/20 22:09
: → TWTRubiks:另外,要怎麽样决定要用public还是private 10/20 22:11
不只这两种,还有(default)和protected
这个是物件导向的观念,可以去翻书里对於这部分的描述
看不懂的话可以去找别本书来对照他们的写法
当你理解这三个关键字的意义後
就比较理解No大大想表达的东西了
至於怎麽采用,没有标准答案
看你怎麽去取舍
设得范围大的话,会有资安上的风险
设得范围小的话,在程式实作上也会有些麻烦
: 推 TWTRubiks:我知道2个的差别~! 不过因为题目上没规定(通常会写) 10/20 22:13
: 推 TWTRubiks:所以我才自己乱设定,小弟刚学不到1个月,请多多包涵 10/20 22:17
: → cha122977:借问,我习惯用this.name而不用name,performance有差吗 10/21 00:09
一般来说performance现在应该不是主要考虑的问题
除非你应用的领域很重视这部分
不过,不用this.name的话,你是要另外产生一个物件来呼叫吗?
因为我刚学java的时候也有遇到这问题,结果是另外产生一个物件去呼叫
後来才改用this.name的写法
所以比较好奇你说要呼叫name这个attribute是要怎麽呼叫的
: 推 TWTRubiks:this.name=name,是只这样吗?! 应该没差吧 10/21 00:14
这应该算是继承的部分,可以去翻一下书确认
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 120.126.66.40
1F:推 No:你讲的应该是overload吧~@@ 10/21 02:26
2F:→ AtarashiAko:真的...太久没复习又搞混了,修一下 10/21 03:02
※ 编辑: AtarashiAko 来自: 120.126.66.40 (10/21 03:03)
3F:推 TWTRubiks:感谢解释~! ^^ 10/21 16:52