java 抽象方法

int 是基本数据类型
Integer是其包装类,注意是一个类。
为什么要提供包装类呢???
一是为了在各种类型间转化,通过各种方法的调用。否则 你无法直接通过变量转化。
比如,现在int要转为String
int a=0;
String result=Integer.toString(a);
在java中包装类,比较多的用途是用在于各种数据类型的转化中。
我写几个demo

//通过包装类来实现转化的
int num=Integer.valueOf("12");
int num2=Integer.parseInt("12");

double num3=Double.valueOf("12.2");
double num4=Double.parseDouble("12.2");
//其他的类似。通过基本数据类型的包装来的valueOf和parseXX来实现String转为XX

String a=String.valueOf("1234");//这里括号中几乎可以是任何类型
String b=String.valueOf(true);
String c=new Integer(12).toString();//通过包装类的toString()也可以
String d=new Double(2.3).toString();

 

package integer;
abstract class Area{//抽象方法abstract public Double getArea();
}class Circle  extends Area{// 求圆面积private Integer r;private Double num = 3.14;public Circle(Integer r) {// 创建构造器super();this.r = r;}public Double getArea() {return r * r * 3.14;}
}class Rectangle extends Area{//求矩形面积private Integer height;private Integer width;public Rectangle(Integer height,Integer width) {// TODO 自动生成的构造函数存根this.height=height;this.width=width;}@Overridepublic Double getArea() {// TODO 自动生成的方法存根return height.doubleValue()*width.doubleValue();}
}class Triangle extends Area{//求三角形面积private Integer a;private Integer b;private Integer c;Triangle(Integer a,Integer b,Integer c){this.a=a;this.b=b;this.c=c;}@Overridepublic Double getArea() { // TODO 自动生成的方法存根Double p=(a+b+this.getC())/2.0;return Math.sqrt( p*(p-a)*(p-b)*(p-this.getC()));//使用海伦公式:S= 根号下p(p-a)(p-b)(p-c) }public Integer getC() {if(a+b<c || a+c<b || b+c<a){System.out.println("三角形的第三边大于两边之和,不能计算面积!");}return c;}}//测试类
public class GrapDemo {public static void main(String[] args) {Double area=new Circle(2).getArea();//两行代码转成一行代码,同等:circle n=new circle();n.getArea();System.out.println("圆的面积为:"+area+"平方厘米");Double rectangle=new Rectangle(10,20).getArea();System.out.println("矩形的面积为:"+rectangle+"平方厘米");Double rriangle=new Triangle(23,12,23).getArea();System.out.println("三角形的面积为:"+rriangle+"平方厘米");}
}

 

 

转载于:https://www.cnblogs.com/jiangxifanzhouyudu/p/6633075.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/417035.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

html用变量存储颜色信息,我如何使用间隔循环修改HTML Canvas颜色?

hue变量和hsl样式中的百分比控制颜色。要从RGB颜色150,150,200开始&#xff0c;将色调设置为240&#xff0c;将饱和度(hsl中的第二个参数)设置为25%&#xff0c;将亮度(第三个参数)设置为78%。要以RGB颜色190,160,200结束&#xff0c;您需要循环&#xff0c;直到色相值达到285为…

spring cloud gateway跨域全局CORS配置

在Spring 5 Webflux中&#xff0c;配置CORS&#xff0c;可以通过自定义WebFilter实现&#xff1a; 注&#xff1a;此种写法需真实跨域访问&#xff0c;监控header中才会带相应属性。 代码实现方式 import org.springframework.http.HttpHeaders; import org.springframework…

1前端学习(2345):关于前端对于xml格式文件的渲染

一、xml和json对比 xml:扩展标记语言&#xff0c;     优点&#xff1a;格式统一&#xff0c;格式标准&#xff0c;容易与其他系统远程交互&#xff0c;数据共享比较方便     缺点&#xff1a;xml文件庞大&#xff0c;格式复杂&#xff0c;解析会花费大量时间和资源&am…

CDH集群异常处理ERROR  Failure due to stall on seeded torrent.、重装时hdfs提示目录已存在、CDH重启不正常

//集群安装报错 ERROR Failure due to stall on seeded torrent. 解决&#xff1a;重启agent服务 //重装时hdfs提示目录已存在 rm -rf /dfs rm -rf /impala/ ///CDH重启不正常 先启动cloudera-scm-server&#xff0c;等能进入web管理页面后/cloudera-scm-server statu…

java - 百钱百鸡小算法

传送门: 袁咩咩的小小博客 百钱百鸡是一个非常经典的不定方程问题&#xff0c;最早源于我国古代的《算经》&#xff0c;这是古代著名数学家张丘建首次提出的。百钱百鸡问题原文如下&#xff1a; 鸡翁一&#xff0c;值钱五&#xff0c;鸡母一&#xff0c;值钱三&#xff0c;鸡雏…

计算机网络管理员demo,计算机网络试题demo

计算机网络试题demo 1 北京交通大学 2006-2007 学年 第二学期考试试题 课程名称&#xff1a;计算机通信与网络技术 班级&#xff1a;电气 05 出题人&#xff1a;网络课程组 题 号 一 二 三 四 五 总分 得 分 签 字 一&#xff0e; 选择题(每题1 分&#xff0c;共20 分) 1&#…

C 语言中可以调用命令行指令的 system()函数

C语言有一个system函数&#xff08;在<stdlib.h>头中&#xff0c;C则为<cstdlib>头&#xff09;&#xff0c;可以用来调用终端命令。原型如下&#xff1a; int system(const char *cmdline /* 命令字符串 */); system函数调用/bin/sh 执行特定的shell命令&#xf…

文本怎么换成html,编辑html格式文本可改成txt格式(可以替换或更换某文本)新手...

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼新的名字生活助手If Clock.Hour < 12 ThenTextWindow.WriteLine("早上好&#xff0c;测试者")ElseIf Clock.Hour < 14 ThenTextWindow.WriteLine("中午好&#xff0c;测试者")ElseIf Clock.Hour < 17…

impala sql清单

创建数据库 CREATE DATABASE IF NOT EXISTS database_name; 查看所有数据库 show databases 删除数据库 DROP DATABASE IF EXISTS sample_database; 进入数据库 use dbname 创建表 CREATE TABLE IF NOT EXISTS test.student (name STRING, age INT, contact INT ); 查…

考研计算机网课辅导,考研计算机网课辅导哪个好

考研计算机网课辅导哪个好&#xff1f;面对市面上如此之多的考研辅导&#xff0c;怎么选择成了很多学员的难题。现在的在线教育水平很高了&#xff0c;特别是在考研辅导上&#xff0c;学习自由&#xff0c;配套服务全面。找培训还是要看老师&#xff0c;比较牛叉的注会老师如张…

什么是流程控制

浅析PHP流程控制 今天Qi号给小白们分享一下PHP基础(相互请教&#xff5e;&#xff5e;)&#xff1a; 下面是Qi号搜集的资料及自己的总结希望有所帮助&#xff1a; 什么是流程控制&#xff1a;在声明式的编程语言中&#xff0c;流程控制指令是指会改变程序运行顺序的指令&#x…

连接hadoop java.io.IOException:Could not locate executable null\bin\winutils.exe in the Hadoop binarie

java连接hadoop报错 java.io.IOException: Could not locate executable null\bin\winutils.exe in the Hadoop binaries. 原因查找 找到报错位置hadoop包中的xxx/Shell.java public static final String getQualifiedBinPath(String executable) throws IOException {// co…

中南大学王斌计算机学院,中南大学 信息科学与工程学院,长沙 410083

摘要&#xff1a;An optimization method of operation parameter based on comprehensive status evaluation model was proposed on the background of optimization control problem for lead-zinc sintering process. Based on the sintering process mechanism analysis, …

HBase shell命令行

启动Shell $ hbase shell 列出所有的表 hbase > list 创建名为mytable的表&#xff0c;含有一个列族hb hbase > create mytable , hb 在‘mytable’表的first行中的‘hb:data’列对应的数据单元中插入字节数组‘hello HBase’ hbase > put mytable , firs…

Win10系列:JavaScript页面导航

页面导航是在开发应用的过程中使用频率较高的技术&#xff0c;其中比较常用的导航方式有多页导航和页内导航&#xff0c;采用多页导航方式的应用程序包含一系列的页面&#xff0c;在一个页面中加入另一个页面的链接地址后&#xff0c;单击链接将跳转到指定页面&#xff0c;从而…

java maven调用hbase

pom.xml <dependency><groupId>org.apache.hbase</groupId><artifactId>hbase-it</artifactId><version>1.2.0</version> </dependency> 源码 import java.io.IOException; import java.util.ArrayList; import java.util.…