package demo04;

/*
* 形状
*/
public abstract class Shape {
// 求周长
public abstract double getGrith();

// 求面积
public abstract double getArea();
}

------------------------------

package demo04;

//继承父类
public class Circle extends Shape {
/*
* 圆的性质:半径2.π
*/
private double r;
// 通常final修饰的常量会加上static,这样就可以通过类名直接访问

public static final double PI = 3.14;

// 构造方法就是传值

public double getR() {
return r;
}

public Circle(double r) {
super();
this.r = r;
}

// 用set方法给属性设值
public void setR(double r) {
this.r = r;
}

public double getPI() {
return PI;
}

/*
* 重写父类的方法
*/
// 计算圆形的周长
@Override
public double getGrith() {

return 2 * PI * r;
}

// //计算圆形的面积
@Override
public double getArea() {
return PI * r * r;
}

}

-------------------------------------------

package demo04;

/*
* 长方形类,继承Shape类
*/
public class Rectangle extends Shape {
// 定义全局属性
public static double width;
public static double hight;

/*
* 通过构造方法对属性进行初始化
*/
public Rectangle(double width, double hight) {
this.width = width;
this.hight = hight;
}

//
public static double getWidth() {
return width;
}

// 用set方法给属性设值
public static void setWidth(double width) {
Rectangle.width = width;
}

public static double getHight() {
return hight;
}

// 用set方法给属性设值
public static void setHight(double hight) {
Rectangle.hight = hight;
}

/*
* 重写父类的方法 (non-Javadoc)
*
* @see demo04.Shape#getGrith()
*/
// 计算长方形的周长

@Override
public double getGrith() {
return (width + hight) * 2;
}

// 计算长方形的面积
@Override
public double getArea() {
return width * hight;
}

}

---------------------------

package demo04;

public class Test {
public static void main(String[] args) {
Shape c = new Circle(5);
System.out.println("圆形的周长:" + c.getArea());
System.out.println("圆形的面积" + c.getGrith());
// 如果不重写构造方法,在此处就不会将长方形类的全局变量的属性传过来,构造方法就不能在此处传值
Shape r = new Rectangle(6, 8);
System.out.println("长方形的周长:" + r.getArea());
System.out.println("长方形的面积:" + r.getGrith());

}
}

finall和set和构造方法的参数意义的更多相关文章

  1. php中$t=date()函数参数意义及时间更改

    php中date()函数用的最多的是:date('Y-m-d H:i:s', time());  这里面的参数意义分别是:Y - 年,四位数字; 如: "2016":m - 月份, ...

  2. 用于string对象中字符截取的几种函数总结——语法、参数意义及用途举例

    1. charAt():返回指定位置的字符. 语法:stringObject.charAt(index) 参数意义:index  必需,指字符在字符串中的下标.需要注意的是,字符串中第一个字符的下标是 ...

  3. [Java] xms xmx XX:PermSize XX:MaxPermSize 参数意义解析

    今天在做jmeter压力测试时又出现以前经常出现的异常,如下图,长时间不弄这个的,又有点不知所措了,所以干脆再来总结一下问题: 以前写过两篇文章,对这个问题研究过,见下面连接: 连接1:http:// ...

  4. EMC与电容(二)-电容参数意义、各电容的特点及应用

    上次的问题,看到很多回答里都有关于X电容,Y电容,NPO之类,这些很奇怪的参数到底代表什么意义呢?以前很多次都在BOM表里看到这些参数,一直都无视过去,正好这次的EMC课程里也提到这方面的知识,正好跟 ...

  5. Delphi 中 paramstr 的用法及参数意义

    原型         function   paramstr(i:index):string         对于任何application paramstr(0)都默认代表的是应用程序的绝对路径.那 ...

  6. bash shell——与if条件相关的参数意义

    最近编写脚本,常看到有 if [ -x $variable ] 类的条件语句,不知道相应参数的意义到底是什么, 特摘录如下:from   http://blog.csdn.net/aaaaatiger ...

  7. Java学习笔记7---父类构造方法有无参数对子类的影响

    子类不继承父类的构造方法,但父类的构造方法对子类构造方法的创建有影响.具体来说就是: ①.当父类没有无参构造方法时,子类也不能有无参构造方法:且必须在子类构造方法中显式以super(参数)的形式调用父 ...

  8. Kotlin中构造方法的参数var val 和 什么都没有的区别

    1.什么都没有,在该类中使不能使用的, 这个参数的作用就是,传递给父类的构造方法 2.使用var 可以在类中使用,相当于 我们声明了一个该类中定义了一个private 的成员变量 3.val表示不让修 ...

  9. menu-代码添加以及add方法参数意义

    今天需要给一个menu动态添加一个item,先把方法记录如下 @Override public boolean onCreateOptionsMenu(Menu menu) { menu.add(Me ...

随机推荐

  1. vagrant 入门

    0.说明 本门所有的操作都是基于mac.windows可做相应调整,大体流程是一样的. 1.什么是vagrant 通俗来讲vagrant是一个通过命令行,来管理虚拟机的工具,vagrant本身并没有提 ...

  2. 如何用Delphi开发网游外挂

    1.动作式,所谓动作式,就是指用API发命令给窗口或API控制鼠标.键盘等,使游戏里的人物进行流动或者攻击,最早以前的“石器”外挂就是这种方式.2.本地修改式,这种外挂跟传统上的一些游戏修改器没有两样 ...

  3. C++11 初始化

    C++11 初始化 统一初始化语法        C++11新添加初始化列表 std::initializer_list<>类型,可以通过{}语法来构造初始化列表 .初始化列表是常数:一旦 ...

  4. 【BZOJ4391】[Usaco2015 dec]High Card Low Card(贪心)

    [BZOJ4391][Usaco2015 dec]High Card Low Card(贪心) 题面 BZOJ 题解 预处理前缀后缀的结果,中间找个地方合并就好了. #include<iostr ...

  5. HGOI20180812 (NOIP2018 提高组 Day1 模拟试题)

    前缀数组其实就是有序的,那么答案显然是      我们尝试求出通项公式: 证明如下: 因为 所以: 解之得: 更加通俗的写法如下: 易知  令 那么, (错位相减) 由易知等式代入得, 所以, 所以程 ...

  6. BZOJ2738 矩阵乘法 【整体二分 + BIT】

    题目链接 BZOJ2738 题解 将矩阵中的位置取出来按权值排序 直接整体二分 + 二维BIT即可 #include<algorithm> #include<iostream> ...

  7. 【COGS2479】 HZOI2016—偏序

    http://cogs.pro/cogs/problem/problem.php?pid=2479 (题目链接) 题意 四维偏序. Solution CDQ套CDQ. 细节 第二次分治不能直接按照mi ...

  8. OpenStack 云主机深入了解(十四)

    云主机深入了解 1.云主机在计算节点以进程方式运行 2.监听vnc的端口,vnc默认端口从5900开始, 多台云主机,端口递增 3.云主机桥接网卡,与宿主机联通网络 提示:在openstack环境下, ...

  9. sssss

    关于征集参加第五届世界互联网大会“世界互联网领先科技成果发布活动”相关成果的通知 2018年07月24日 08:55:00来源: 中国网信网     [打印] [纠错]     各有关单位/个人: 第 ...

  10. Java中多个异常的捕获顺序(多个catch)

    import java.io.IOException; public class ExceptionTryCatchTest { public void doSomething() throws IO ...