本文章为本人个人编辑,仅供参考。如有读者发现问题,请留言提醒本人修改。
- 编写应用程序,创建类的对象,分别设置圆的半径、圆柱体的高,计算并分别显示圆半径、圆面积、圆周长,圆柱体的体积。
实现思路及关键代码:- 编写一个圆类Circle,该类拥有:
a) 一个成员变量,radius(私有,浮点型);//存放圆的半径
b) 两个构造方法(无参、有参);
c) 三个成员方法
double getArea() //获取圆的面积
double getPerimeter() //获取圆的周长
void show() //将圆的关径、周长、面积输出到屏幕 - 编写一个圆柱体类Cylinder,它继承于上面的Circle类。还拥有:
a) 一个成员变量,double hight (私有,浮点型); //圆柱体的高;
b) 构造方法
c) 成员方法
double getVolume() //获取圆柱体的体积
void showVolume() //将圆柱体的体积输出到屏幕
- 编写一个圆类Circle,该类拥有:
public class Test {
public static void main(String[] args) {
Circle c = new Cylinder(3.5,4.5);
c.show();
Cylinder cl = (Cylinder)c;
cl.shouVolume();
}
}
class Circle{
double redius;//半径
public Circle() {
}
//构造方法
public Circle(double redius) {
this.redius = redius;
}
//面积方法
double getArea() {
return Math.PI*redius*redius;
}
//周长方法
double getPerimeter() {
return Math.PI*redius*2;
}
public void show() {
System.out.println("园的半径="+redius);
System.out.println("园的面积="+getArea());
System.out.println("园的周长为="+getPerimeter());
}
}
class Cylinder extends Circle{
double hight;//圆柱体的高
public Cylinder(double redius,double hight) {
this.hight=hight;
this.redius=redius;
}
double getVolume() {
return getArea()*hight;
}
public void shouVolume() {
System.out.println("圆柱体的体积="+getVolume());
}
}
- 编写程序实现乐手弹奏乐器。乐手可以弹奏不同的乐器从而发出不同的声音。可以弹奏的乐器包括二胡、钢琴和琵琶。
实现思路及关键代码:- 定义乐器类Instrument,包括方法makeSound();
- 定义乐器类的子类:二胡Erhu、钢琴Piano和小提琴Violin;
- 定义乐手类Musician,可以弹奏各种乐器play(Instrument i);
- 定义测试类,给乐手不同的乐器让他弹奏。
//乐器类
abstract class Instrument{
String name;
String sound;
abstract String makeSound();
}
//二胡类
class Erhu extends Instrument{
Erhu(){
name = "Erhu";
sound = "二胡声";
}
String makeSound() {
return sound;
}
}
//钢琴类
class Piano extends Instrument{
Piano(){
name = "Piano";
sound = "钢琴声";
}
String makeSound() {
return sound;
}
}
//小提琴类
class Violin extends Instrument{
Violin(){
name = "Violin";
sound = "小提琴声";
}
String makeSound() {
return sound;
}
}
//乐手类
class Musician{
void play(Instrument i) {
System.out.println(i.makeSound());
}
}
public class Test2 {
//程序入口
public static void main(String[] args) {
Musician musician = new Musician();
Violin violin = new Violin();
Piano piano = new Piano();
Erhu erhu = new Erhu();
musician.play(violin);
musician.play(piano);
musician.play(erhu);
}
}
- 编写程序描述影视歌三栖艺人。需求说明:请使用面向对象的思想,设计自定义类,描述影视歌三梄艺人。
实现思路:- 分析影视歌三栖艺人的特性:可以演电影,可以演电视剧,可以唱歌
- 定义多个接口描述特性
a) 演电影的接口-----方法:演电影
b) 演电视剧的接口-----方法:演电视剧
c) 唱歌的接口-----方法:唱歌 - 定义艺人类实现多个接口
程序运行结果如图5-36所示。
图5-37 编码题3运行效果图.png
public class Test3 {
public static void main(String[] args) {
Star star = new Star("杨幂");
star.Hello();
star.Movie();
star.Sing();
star.TvShow();
}
}
//演电影接口
interface Movie{
void Movie();
}
//唱歌接口
interface Sing{
void Sing();
}
//演电视剧接口
interface TvShow{
void TvShow();
}
class Star implements Movie,Sing,TvShow{
String name;
public Star(String name) {
this.name=name;
}
void Hello() {
System.out.println("大家好,我是"+name);
}
public void Movie() {
System.out.println("我能演电影");
}
public void Sing() {
System.out.println("我能唱歌");
}
public void TvShow() {
System.out.println("我能演电视剧");
}
}