首页 存档 技术 查看内容

跟着丰翼学Java Day8 | 不忘初心,继续前进

2018-3-30 13:00 |来自: 互联网 280 0

摘要: 回顾1.static final final 不能被继承 final 变量不能被更改 final 方法不能被重写 定义常量 必须声明同时初始化 通过类名点来访问 不能被改变 常量名建议所有字母都大写 优点:效率高 2.抽象方法 由abstract ...

回顾

1.static final

final 不能被继承

final 变量不能被更改

final 方法不能被重写

定义常量

必须声明同时初始化

通过类名点来访问

不能被改变

常量名建议所有字母都大写

优点:效率高


2.抽象方法

由abstract修饰

有方法的定义,没有方法的实现(没有大括号)


3.抽象类

由abstract修饰

包含抽象方法,也可以声明为抽象类(不是必须的)

抽象类不能实例化(不能new对象)

抽象类是需要被继承,子类:

重写所有父类的抽象方法让不完整变完整

也声明成抽象类

抽象类:

父类的意义:

封装所有子类的共性,为子类重用

为所有子类提供一种公共的类型向上造型

可以包含抽象方法,为所有子类提供一个统一的入口。


3.接口

是一种标准,规范

接口指向实现类

接口不能被实例化

知识点:

根据周长计算不同形状图形的面积,详细要求如下:

1.计算多种图形的面积,并比较各种图形面积的最大值。

2.使用抽象类及其子类的方式实现本案例。

3.本案例以圆形和正方形为例。

注:正方形的面积公式为:0.0625*c*c。圆形的面积公式为:0.0796*c*c,

其中,c表示图形的周长。


分析


创建一个圆的类,创建一个正方形的类

变量:周长c

方法:计算面积方法

class Circle extend shape{//3个不同周长的圆

double c;

area(){}

}

class Square extend shape{//4个不同周长的正方形

double c;

area(){}

}


定义父类

abstract class shape{

double c;

abstract double area();//不完整

}


Circle[] cir = new Circle[3];

Cir[0] = new Circle(1);

Cir[1] = new Circle(2);

Cir[3] = new Circle(3);


Squre[] s = new Squre[4];

s[0] = new Squre(1);

s[1] = new Squre(2);

s[2] = new Squre(3);

s[3] = new Squre(4);


Shape[] shape = new Shape[12];

shape[0] = new Circle(1);//向上造型

shape[1] = new Circle(2);

shape[2] = new Circle(3);


shape[3] = new Squre(1);

shape[4] = new Squre(2);

shape[5] = new Squre(3);

shape[6] = new Squre(4);


shape[7] = new Five(1);

shape[8] = new Five(2);

shape[9] = new Five(3);

shape[10] = new Five(4);

shape[11] = new Five(5);


在测试类中定义一个比较方法

double Maxarea(Shape[] c){

shape[0].area();//圆1的面积

shape[1].area();//圆2的面积

shape[2].area();//圆3的面积


shape[3].area();//正方形1的面积

shape[4].area();//正方形2的面积

shape[5].area();//正方形3的面积

shape[6].area();//正方形4的面积

在今天的Java小练习,你学会了吗?


声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

相关分类

返回顶部