- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
java_继承与接口详细讲解全解
继承与接口 继承 控制符 接口 内部类 继承 继承是一种由已有的类创建新类的机制,是面向对象程序设计的基石之一。 子类继承父类的属性和方法,还可以定义新的属性和方法,也可以改写父类的方法。 继承实际上是存在于面向对象程序中的两个类之间的一种关系。 Java要求每个类都有父类(隐含为java.lang包中的Object类)。 super 是对父类的引用,引用父类的构造方法、父类成员属性和方法。 继承 属性: name age salary 方法: setSalary getInfo Employee Engineer Manager Secretary Director 属性: allowance 方法: setAllowance getInfo 属性: telephone department 方法: setTel getInfo 继承—增加属性和方法 class Employee { String name ; int age ; float salary ; void upSalary(float inc) { salary = salary + inc ; } } class Manager extends Employee { float allowance ; void setAllowance(float a) { allowance = a ; } } class Direator extends Manager { String telephone ,department ; void setTel(String tel) { telephone = tel ;} } 调用父类的构造方法 子类继承父类所有的属性和方法(非private),但不继承构造方法。 子类或定义自己的构造方法,或使用隐含构造方法。 在继承情况下的对象初始化: 为对象分配内存并初始化(0、null、false) 执行每一层的类的显式初始化(从父类到子类)。 执行每一层的类的构造方法 (从父类到子类) 。 调用父类构造方法 为了保证安全性,在子类的构造方法中,应首先调用一个父类的构造方法。 子类可在自己的构造方法中使用super(…) 来调用父类带参数的构造方法。 super(…)调用语句必须是子类构造方法中的第一个可执行语句。 若子类 的构造方法中没有super(…)语句,系统将隐含调用父类无参数构造方法 若父类的构造方法都有参数,则子类必须定义自己的构造方法,然后通过super(…)语句调用父类的某个构造方法。 class A{ int x=1 ; A(){ x=10; } A(int p1){ //p1=5 x=x+p1; } } class Sa extends A { } class Sb extends A { Sb() { x=x+3; } Sb(int p1) { //p1=5 x=x+p1; } Sb(int p1,int p2){ //p1=5,p2=100 super(p1); x=x+p2; } } class Ssb extends Sb { Ssb() { x=x+6 ; } } 访问控制符 访问控制符是一组起到限定类、域或方法是否可以被程序里的其他部分访问和调用的修饰符 。 类访问控制符 公共类 :public 类名 一般类 一个包中的类只能访问另一个包中的public类。 一般类只能在同一包中使用,一个包中的类不用说明可相互访问。 把常在一起协同工作的类放在一个包里是很自然的。 一个类作为整体对程序的其他部分可见,并不能代表类内的所有域和方法也同时对程序的其他部分可见,前者只是后者的必要条件 属性和方法的可见性 属性和方法的访问限定符 当前类 同Package 子孙 其他Package public √ √ √ √ protected √ √ √ × 无访问限定符 √ √ × × private √ × × × 属性和方法的访问限定符 为了使对象具有良好的封装性,一般将类的非静态属性设计成私有。 为了使其它类或对象能够访问这些私有属性,本类必须提供访问私有属性的方法(公共方法)。 按照惯例,读私有属性的方法取名为get… 写私有属性的方法取名为 set… ,get/set后面跟上属性的名称,其中
您可能关注的文档
最近下载
- americanculture小学英语美国文化专题.pptx VIP
- 中国珠宝首饰传统文化 夏商周 中国古代夏商周(商)首饰种类2.pptx VIP
- 大学生科技创新课程之中美青年创客大赛(西南交通大学)中国大学MOOC 慕课 章节测验 期末考试答案.docx VIP
- 中国珠宝首饰传统文化 夏商周 中国古代夏商周(夏)首饰种类1.pptx VIP
- 【课程思政案例】《机械设计基础》.docx VIP
- 2025中级注册安全工程师《安全生产技术基础》考前密训10页纸.docx VIP
- 科研伦理与学术规范期末考试答案.docx VIP
- 检验科重点专科汇报.pptx VIP
- 重大社2024《财务实训教程—智能财务共享》教学课件-费用共享.pptx VIP
- AmericanCulture.ppt VIP
文档评论(0)