文章目录
- [1. 相关概念](#1. 相关概念)
- [2. 从代码中理解](#2. 从代码中理解)
1. 相关概念
Java 只支持单继承,不允许多重继承:
(1)一个子类只能有一个父类
(2)一个父类可以派生出多个子类
举例区分:
java
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类:
java
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类
java
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 类的对象,设置圆柱的底面半径和高,并输出圆柱的体积。