1.实现如下类之间的继承关系,并编写Music类来测试这些类。
2、编写一个Java应用程序,该程序包括3个类:Monkey类、People类和主类E。要求:
(1) Monkey类中有个构造方法:Monkey (String s),并且有个public void speak()方法,在speak方法中输出“咿咿呀呀......”的信息。
(2)People类是Monkey类的子类,在People类中重写方法speak(),在speak方法中输出“小样的,不错嘛!会说话了!”的信息。
(3)在People类中新增方法void think(),在think方法中输出“别说话!认真思考!”的信息。
(4)在主类E的main方法中创建Monkey与People类的对象类测试这2个类的功能。
源代码:
package bbb;
class monkey {
monkey (String s){
}
public void speak() {
System.out.println("咿咿呀呀......");
}
}
class people extends monkey {
people(String s) {
super(s);
}
public void speak() {
System.out.println("小样的,不错嘛!会说话了");
}
public void think() {
System.out.println("别说话!认真思考!");
}
}
public class E {
public static void main(String[] args) {
monkey s1=new monkey(null);
s1.speak();
people s2=new people(null);
s2.speak();
s2.think();
}
}
运行结果:
3、按要求编写一个Java应用程序:
(1)定义一个类,描述一个矩形,包含有长、宽两种属性,和计算面积方法。
(2)编写一个类,继承自矩形类,同时该类描述长方体,具有长、宽、高属性,和计算体积的方法。
(3)编写一个测试类,对以上两个类进行测试,创建一个长方体,定义其长、宽、高,输出其底面积和体积。
源代码:
方法一:
package bbb;
import java.util.*;
class a {
double l,d;
public double s() {
double s=l*d;
return s;
}
}
class b extends a{
double h;
public double v() {
double v=l*d*h;
return v;
}
}
public class test {
public static void main(String[] args) {
b s=new b();
Scanner rd=new Scanner(System.in);
System.out.println("请输入长方体的长、宽、高:");
s.l=rd.nextDouble();
s.d=rd.nextDouble();
s.h=rd.nextDouble();
System.out.println("底面积:"+s.s()+"体积:"+s.v());
}
}
方法二(运用私有属性,setxx()和getxx()方法):
package bbb;
import java.util.*;
class a{
private double l,d;
public void setl(double l) {
this.l=l;
}
public double getl() {
return l;
}
public void setd(double d) {
this.d=d;
}
public double getd() {
return d;
}
public double s() {
return l*d;
}
}
class b extends a{
private double h;
public void seth(double h) {
this.h=h;
}
public double geth() {
return h;
}
public double v() {
return getl()*getd()*h;
}
}
public class test {
public static void main(String[] args) {
b s=new b();
s.setl(2.1);
s.setd(1.5);
s.seth(1.8);
System.out.println("面积:"+s.s()+"体积:"+s.v());
}
}
运行结果:
4、编写一个Java应用程序,设计一个汽车类Vehicle,包含的属性有车轮个数wheels和车重weight。
小车类Car是Vehicle的子类,其中包含的属性有载人数loader。卡车类Truck是Car类的子类,其中包含的属性有载重量payload。
每个类都有构造方法和输出相关数据的方法。最后,写一个测试类来测试这些类的功能。
源代码:
package bbb;
class vehicle{
int wheels;
double weight;
public vehicle() {
this.wheels=4;
this.weight=100;
}
public void print() {
System.out.println("车轮个数:"+wheels+",车重:"+weight);
}
}
class car extends vehicle{
int loader;
public car() {
this.loader=5;
}
public void print1() {
System.out.println("有载人数:"+loader);
}
}
class truck extends car{
double payload;
public truck() {
this.payload=200;
}
public void print2() {
System.out.println("有载重量:"+payload);
}
}
public class test1 {
public static void main(String[] args) {
truck s=new truck();
s.print();
s.print1();
s.print2();
}
}
运行结果: