博主简介:
博客主页:Java知识分享博主
Java零基础入门专栏:Java零基础入门专栏
Java交流社区:飞鸟社区
欢迎阅读,如果文章对你有帮助点赞,支持一下!
推荐阅读
Java零基础入门:概论(一)
Java零基础入门:实战教程(二)
问题描述:
定义抽象的图形类,其中有求周长和面积的抽象方法,图形类派生出两个子类:圆形、正方形。并书写测试类。
定义一个抽象类型shape,定义类名circular圆形,定义半径,构造函数,计算机面积公式以及周长,正方形也是一样,用c2.print()调用方法输出结果
package S3;
public class S1 {
public static void main(String[] args) {
circular c1 =new circular(4);//传递实参
c1.print();
Square c2 = new Square(5);
c2.print();//调用方法
}
}
abstract class Shape
{
abstract double getArea();
abstract double getperimeter();
}
class circular extends Shape //圆形
{
double rear;
public circular(double r)//构造函数
{
rear=r;
}
public double getArea() //面积
{
return 3.14*rear*rear;
}
public double getperimeter() //周长
{
return 2*3.14*rear;
}
public void print()//输出圆形的面积和周长
{
System.out.println("面积是:"+getArea());
System.out.println("周长是:"+getperimeter());
}
}
class Square extends Shape //正方形
{
double leght;
public Square(double l)
{
leght=l;
}
public double getArea() //面积
{
return leght*leght;
}
public double getperimeter() //周长
{
return 2*(leght+leght);
}
public void print()
{
System.out.println("面积是:"+getArea());
System.out.println("周长是:"+getperimeter());
}
}
问题描述:
二、假设银行Bank已经有了按整年计算利息的一般方法,其中year只能取正整数,比如按整年计算的方法:
double comperterInterest()
{
interest=year0.35savedMoney;
return interest
}
建设银行ConstructionBank是Bank的子类准备覆盖继承的成员变量year,并覆写计算利息的方法,即自己声明一个double型的year变量,比如,当year取值5.216时,表示要计算5年零216天的利息,但希望首先按银行Bank的方法comperterInterest()计算出5整年的利息,然后再自己计算216天的利息。那么,建设银行就必须把5.216的整数部分赋给隐藏的year,并让super调用隐藏的,按整年计算利息的方法。
假设按天计算利息时每天利息是0.0001.
建设银行ConstructionBank是Bank的子类准备覆盖继承的成员变量year,并覆写计算利息的方法,同样构造函数,传递参数,计算利息,调用方法。
package S3;
public class S2 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Bank C1 =new ConstructionBank();
C1.dispoit(10000.75, 8);
//C1puterInterest();
System.out.println(C1.computerInterest());
}
}
class Bank{
int year;//年份
double interest;//利息
double saveMoney;//保存货币
void dispoit(double money,int year) {
saveMoney=money;
this.year=year;
}
double computerInterest(){
interest=year*0.35*saveMoney;
return interest;
}
}
class ConstructionBank extends Bank{
double year;
double price;
double computerInterest()
{
price=(year-(int)year)*0.0001*saveMoney+super.computerInterest();
return price;
}
}
更多推荐
Java零基础入门:实战教程(二)
发布评论