package 课后练习;
/*
编写一个Animal类,具有属性:种类;具有功能:吃、睡。定义
其子类Fish和Dog,定义主类E,在其main方法中分别创建其对象
并测试对象的特性。
*/
//建立一个父类
class Animal
{
//成员属性
private String zhonglei ;
//构造无参方法
public Animal( )
{
}
//set get
public String getZhonglei() {
return zhonglei;
}
public void setZhonglei(String zhonglei) {
this.zhonglei = zhonglei;
}
//成员方法
public void eat( )
{
System.out.println("鱼吃虾米");
}
public void sleep( )
{
System.out.println("在水里睡觉");
}
}
//子类
class Fish extends Animal
{
}
//子类
class Dog extends Animal
{
//重写方法
public void eat( )
{
System.out.println("狗吃骨头");
}
public void sleep( )
{
System.out.println("在地上睡觉");
}
}
public class E {
public static void main(String[] args)
{
Fish a = new Fish( ) ;
a.eat();
a.sleep();
System.out.println();
Dog b = new Dog( ) ;
b.eat();
b.sleep();
}
}
package 课上练习;
/*
编写一个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个类的功
能。
*/
//测试
public class E {
public static void main(String[] args) {
//创建一个猴子对象
Monkey a = new Monkey("咿咿呀呀~") ;
a.speak();
//创建一个人类对象
People1 b= new People1() ;
b.speak();
b.thank();
}
}
//新建猴子类
class Monkey
{
//无参构造方法
public Monkey()
{
}
//有参构造方法
public Monkey(String s)
{
}
//成员方法
public void speak( )
{
System.out.println("咿咿呀呀~");
}
}
//新建人类是猴子类的子类
class People1 extends Monkey
{
//继承后进行方法重写
public void speak( )
{
System.out.println("小样的,不错嘛!会说话了!");
}
//添加新的方法
public void thank ( )
{
System.out.println("别说话!认真思考!");
}
}

package 课上练习;
//新建一个父类
class People2
{
//成员属性
protected double weight ;
protected double height ;
//get set
public double getWeight() {
return weight;
}
public void setWeight(double weight) {
this.weight = weight;
}
public double getHeight() {
return height;
}
public void setHeight(double height) {
this.height = height;
}
//无参构造方法
People2( )
{
}
//成员方法
public void speakHello( )
{
System.out.println("你好!");
}
public void averageHeight( )
{
System.out.println("我们中国人平均身高1.75m");
}
public void averageWeight( )
{
System.out.println("我们中国人平均体重60kg");
}
}
//建立一个子类
class ChinaPeople extends People2
{
//成员方法
public void chinaGongFu()
{
System.out.println("坐如钟,站如松,卧如弓,中国功夫博大精深");
}
}
//建立一个子类
class AmericanPeople extends People2
{
//成员方法
public void americanBoXing()
{
System.out.println("直拳,勾拳,俯冲拳,拳拳入肉");
}
//方法重写
public void speakHello( )
{
System.out.println("hello~");
}
public void averageHeight( )
{
System.out.println("我们美国人平均身高1.78m");
}
public void averageWeight( )
{
System.out.println("我们美国人平均体重63kg");
}
}
//测试类
public class A922
{
public static void main(String[] args)
{
//创建对象
ChinaPeople a = new ChinaPeople( ) ;
a.setHeight(178);
a.setWeight(63);
a.speakHello();
System.out.println("我是中国人,身高"+a.getHeight()+"米,体重"+a.getWeight()+"kg");
a.averageWeight();
a.averageHeight();
a.chinaGongFu();
System.out.println();
AmericanPeople b = new AmericanPeople( ) ;
b.setHeight(180);
b.setWeight(67);
b.speakHello();
System.out.println("我是中国人,身高"+b.getHeight()+"米,体重"+b.getWeight()+"kg");
b.averageWeight();
b.averageHeight();
b.americanBoXing();
}
}

package 课后练习;
//建立一个父类
class Instrument
{
//构造无残方法
public Instrument( )
{
}
//成员方法
public void play( )
{
System.out.println("弹奏乐器");
}
}
//创建第一个子类
class Wind extends Instrument
{
//将父类方法重写
public void play( )
{
System.out.println("弹奏Wind");
}
//新的成员方法
public void play2( )
{
System.out.println("调用Wind的play2");
}
}
//
class Brass extends Instrument
{
//将父类方法重写
public void play( )
{
System.out.println("弹奏Brass");
}
//新的成员方法
public void play2( )
{
System.out.println("调用Brass的play2");
}
}
public class Music
{
public static void tune( Instrument i )
{
i.play();
}
public static void main(String[] args)
{
Instrument i = new Instrument( ) ;
tune(i);
Wind a = new Wind( ) ;
a.play();
a.play2();
Brass b = new Brass( ) ;
b.play();
b.play2();
}
}
;

package 课后练习;
/*
按要求编写一个Java应用程序:
(1)定义一个类,描述一个矩形,包含有长、宽两种属性,和计算面积方法。
(2)编写一个类,继承自矩形类,同时该类描述长方体,具有长、宽、高属性,
和计算体积的方法。
(3)编写一个测试类,对以上两个类进行测试,创建一个长方体,定义其长、
宽、高,输出其底面积和体积。
*/
//父类
class ChangFangXing {
// 成员属性
private double kuan;
private double chang;
// 构造方法
public ChangFangXing() {
}
// 构造方法
public ChangFangXing(double kuan, double chang) {
this.chang = chang;
this.kuan = kuan;
}
// 面积方法
public double mianJi() {
return chang * kuan;
}
// 周长方法
public double zhouChang() {
return 2 * (chang + kuan);
}
}
// 子类
class Lifangti extends ChangFangXing {
// 成员属性
private double gao;
private double kuan;
private double chang;
// 构造方法
public Lifangti(double kuan, double gao, double chang) {
this.gao = gao;
this.chang = chang;
this.kuan = kuan;
}
//体积方法
public double tiJi() {
return gao * chang * kuan;
}
// 面积方法
public double mianJi() {
return chang * kuan;
}
// 周长方法
public double zhouChang() {
return 2 * (chang + kuan);
}
}
//测试类
public class Ceshijuxing {
public static void main(String[] args) {
Lifangti a = new Lifangti(2, 3, 3);
System.out.println("立方体底面矩形周长=" + a.zhouChang() + "
底面面积=" + a.mianJi() + "
体积=" + a.tiJi());
}
}
