finall和set和构造方法的参数意义
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和构造方法的参数意义的更多相关文章
- php中$t=date()函数参数意义及时间更改
php中date()函数用的最多的是:date('Y-m-d H:i:s', time()); 这里面的参数意义分别是:Y - 年,四位数字; 如: "2016":m - 月份, ...
- 用于string对象中字符截取的几种函数总结——语法、参数意义及用途举例
1. charAt():返回指定位置的字符. 语法:stringObject.charAt(index) 参数意义:index 必需,指字符在字符串中的下标.需要注意的是,字符串中第一个字符的下标是 ...
- [Java] xms xmx XX:PermSize XX:MaxPermSize 参数意义解析
今天在做jmeter压力测试时又出现以前经常出现的异常,如下图,长时间不弄这个的,又有点不知所措了,所以干脆再来总结一下问题: 以前写过两篇文章,对这个问题研究过,见下面连接: 连接1:http:// ...
- EMC与电容(二)-电容参数意义、各电容的特点及应用
上次的问题,看到很多回答里都有关于X电容,Y电容,NPO之类,这些很奇怪的参数到底代表什么意义呢?以前很多次都在BOM表里看到这些参数,一直都无视过去,正好这次的EMC课程里也提到这方面的知识,正好跟 ...
- Delphi 中 paramstr 的用法及参数意义
原型 function paramstr(i:index):string 对于任何application paramstr(0)都默认代表的是应用程序的绝对路径.那 ...
- bash shell——与if条件相关的参数意义
最近编写脚本,常看到有 if [ -x $variable ] 类的条件语句,不知道相应参数的意义到底是什么, 特摘录如下:from http://blog.csdn.net/aaaaatiger ...
- Java学习笔记7---父类构造方法有无参数对子类的影响
子类不继承父类的构造方法,但父类的构造方法对子类构造方法的创建有影响.具体来说就是: ①.当父类没有无参构造方法时,子类也不能有无参构造方法:且必须在子类构造方法中显式以super(参数)的形式调用父 ...
- Kotlin中构造方法的参数var val 和 什么都没有的区别
1.什么都没有,在该类中使不能使用的, 这个参数的作用就是,传递给父类的构造方法 2.使用var 可以在类中使用,相当于 我们声明了一个该类中定义了一个private 的成员变量 3.val表示不让修 ...
- menu-代码添加以及add方法参数意义
今天需要给一个menu动态添加一个item,先把方法记录如下 @Override public boolean onCreateOptionsMenu(Menu menu) { menu.add(Me ...
随机推荐
- 统计nginx日志的状态码
日志格式 61.159.140.123 - - [23/Aug/2014:00:01:42 +0800] "GET /favicon.ico HTTP/1.1" 404 \ &qu ...
- Guava的SetMultimap
在工作中,我们会经常用到如下类似的结构 Map<String, Set<Stirng>> map = new HashMap<Stirng, Set<String& ...
- 【设计模式】—— 中介者模式Mediator
前言:[模式总览]——————————by xingoo 模式意图 使用一个中介的对象,封装一组对象之间的交互,这样这些对象就可以不用彼此耦合. 这个中介者常常起着中间桥梁的作用,使其他的对象可以利用 ...
- P4932 浏览器
题目背景 __stdcall在用Edge玩slay的时候,鼠标会经常失灵,这让她十分痛苦,因此她决定也要让你们感受一下Edge制造的痛苦. 题目描述 __stdcall给了你n个点,第i个点有权值x[ ...
- 【ARC082E】ConvexScore
Description 给定二维直角坐标系上的N个点\((X_i,Y_i)\),定义一个有N个点中的部分点所构成点集为"凸点集",当且仅当该集合内的所有点恰好构成一个面积为正的凸多 ...
- solr的基本使用
Solr 概念: 1. 搜索引擎的技术,建立在Lucene之上,可以解决跨平台,跨语言的问题.(Lucene本身是个jar包,也就是API,不能独立运行,需要程序的调用来完成全局检索,不具备跨平台,跨 ...
- sublime 安装repl插件
sublime调试Python程序,不能input,但是我们可以借助repl的插件来实现 去GitHub下载repl插件:https://github.com/wuub/SublimeREPL 下载好 ...
- Linux 磁盘自动挂载
磁盘代号或者装置的Label 挂载点 档案系统格式 档案系统参数 是否用dump备份 是否用fsck检查扇区 0 0 1 1 2 2 下面来写一个代表的 ...
- pytho部分命令
python --version查看版本号 pip install XXX 安装模块 pip uninstall XXX 卸载模块
- 【DS】排序算法之插入排序(Insertion Sort)
一.算法思想 一般来说,插入排序都采用in-place在数组上实现.具体算法描述如下:1)从第一个元素开始,该元素可以认为已经被排序2)取出下一个元素,在已经排序的元素序列中从后向前扫描3)如果该元素 ...