【java学习—七】单继承和多层继承(30)

news/2024/10/23 7:23:24/

文章目录

  • 1. 相关概念
  • 2. 从代码中理解


1. 相关概念

Java 只支持单继承,不允许多重继承:
(1)一个子类只能有一个父类
(2)一个父类可以派生出多个子类
    
举例区分:

class SubDemo extends Demo{ } //ok
class SubDemo extends Demo1,Demo2...//error

在这里插入图片描述
每一个子类只能有唯一的父类,下图时单继承的样例:
在这里插入图片描述

2. 从代码中理解

练习题1
1.(1) 定义一个 ManKind 类,包括
    ①成员变量 int sex 和 int salary ;
    ②方法 void manOrWorman() :根据 sex 的值显示“ man”(sex == 1) 或者 “ women”(sex == 0);
    ③方法 void employeed() :根据 salary 的值显示“ no job”(salary == 0) 或者“ job”(salary != 0)。
(2) 定义类 Kids 继承 ManKind ,并包括
    ①成员变量 int yearsOld ;
    ②方法 printAge() 打印 yearsOld 的值。
(3) 在 Kids 类的 main 方法中实例化 Kids 的对象 someKid ,用该对象访问其父类的成员变量及方法。

答案:
(1)定义的ManKind类:

package day07;public class ManKind {int sex;int salary;public int getSex() {return sex;}public void setSex(int sex) {this.sex = sex;}public int getSalary() {return salary;}public void setSalary(int salary) {this.salary = salary;}public void manOrWoman() {if(this.sex == 1) {System.out.println("man");}else if(this.sex == 0) {System.out.println("Woman");}}public void employeed() {if(this.salary == 0) {System.out.println("no job");}else {System.out.println("job");}}}

(2)定义的Kids类

package day07;public class Kids extends ManKind {int yearsOld;public int getYearsOld() {return yearsOld;}public void setYearsOld(int yearsOld) {this.yearsOld = yearsOld;}public void printAge() {System.out.println(this.yearsOld);}public static void main(String[] args) {    //在 Kids 类的 main 方法中实例化 Kids 的对象 someKid Kids someKid = new Kids();someKid.setSex(0);someKid.setSalary(100);someKid.manOrWoman();someKid.employeed();}
}

练习题2
根据下图实现类。在 TestCylinder 类中创建 Cylinder 类的对象,设置圆柱的底面半径和高,并输出圆柱的体积。
在这里插入图片描述


http://www.ppmy.cn/news/1152799.html

相关文章

vscode利用lauch.json和docker中的delve调试本地crdb

---- vscode利用delve调试crdb 创建了一个delve容器用于debug crdbdelve: Delve是一个用于Go编程语言的调试器。它提供了一组命令和功能,可以帮助开发人员在调试过程中检查变量、设置断点、单步执行代码等操作。Delve可以与Go程序一起使用,…

Apache Doris 2.0.2 版本正式发布!

峰会官网已上线,最新议程请关注:doris-summit.org.cn 点击报名 亲爱的社区小伙伴们,Apache Doris 2.0.2 版本已于 2023 年 10 月 6 日正式发布,该版本对多个功能进行了更新优化,旨在更好地满足用户的需求。有 92 位贡献…

ARMv7-A 那些事 - 7.栈回溯浅析

By: Ailson Jack Date: 2023.10.14 个人博客:http://www.only2fire.com/ 本文在我博客的地址是:http://www.only2fire.com/archives/159.html,排版更好,便于学习,也可以去我博客逛逛,兴许有你想要的内容呢。…

20231014后台面经总结

1.Spring怎么解决循环依赖 形象地解释 为什么三层缓存 我的简单理解: 1.A依赖B,B生成时先注入A未注入属性的原始对象earlySingletonObject 2.引入三级缓存SingletonFacotry的目的是解决aop提前创建代理的步骤,不然它注入的对象跟真实的不一致…

JavaScript-es6-新版语法-export-import

文章目录 1.export2.import3.export default 命令4.总结 在JavaScript ES6中,export与export default均可用于导出常量、函数、文件、模块等。模块功能主要由两个命令构成:export和import。export命令用于规定模块的对外接口,import命令用于输…

QT: 一种精确定时器类的实现与使用

1&#xff09;类的实现 #ifndef CPRECISETIMER_H #define CPRECISETIMER_H#include <windows.h>class CPreciseTimer { public:CPreciseTimer();bool SupportsHighResCounter();void StartTimer();void StopTimer();__int64 GetTime();private://Auxiliary Functionvoid…

软件工程与计算总结(十)软件体系结构设计与构建

目录 ​编辑 一.体系结构设计过程 1.分析关键需求和项目约束 2.选择体系结构风格 3.体系结构逻辑设计 4.体系结构实现 5.完善体系结构设计 6.定义构件接口 二.体系结构原型构建 1.包的创建 2.重要文件的创建 3.定义构件之间的接口 4.关键需求的实现 三.体系结构的…

Java - 发送 HTTP 请求的及其简单的方法模块 - hutool

目录 一、POST 传递简单的字符串内容 .body(params)二、POST 传递 Json 数据&#xff0c;以表单类型传递 .form(params)二、POST 传递 Json 数据&#xff0c;以表单类型传递 .form(params) 和 .body(params) 方法效果等效的思路四、传统接口带 token 验证的代码模板参考链接 一…