题目一:

  编写一个类Computer,类中含有一个求n的阶乘的方法。将该类打包,并在另一包中德Java文件App.java中引入包,在主类中定义Computer类的对象,调用求n的阶乘的方法(n值由参数决定),并将结果输出。

代码

1.App.java

 /**
* 主类App,包含一个主方法;
* 主方法的功能:创建对象,接受输入,调用Computer类中的方法计算阶乘并输出;
*/ package b;
import a.*;
import java.util.Scanner; public class App {
public static void main(String[] args){
int n;
Computer c = new Computer(); //创建对象c;
System.out.print("想求几的阶乘:");
Scanner reader = new Scanner(System.in);
n = reader.nextInt();
System.out.println(""+n+"阶乘是:"+c.Jc(n)); // 调用方法并输出
}
}

2.Computer.java

 /**
* 定义了一个Computer类,包含一个方法Jc;
* Jc的功能是计算n的阶乘;
*/ package a; public class Computer { public double Jc(int n){ //求n阶的乘的方法
int i;
double num=1;//存储每次乘之后的值
for(i=1;i<=n;i++){
num *=i;
}
return num;
}
}

运行结果

题目二:

设计一个MyPoint类,表示一个具有x坐标和y坐标的点,该类包括:

  • 两个私有成员变量x和y表示坐标值;
  • 成员变量x和y的访问器和修改器
  • 无参构造方法创建点(0,0);
  • 一个有参构造方法,根据参数指定坐标创建一个点;
  • distance方法(static修饰)返回参数为MyPoint类型的两个点对象之间的距离。

编写主类Test,在主类中输入两点坐标,创建两个点对象,利用distance()方法计算这两个点之间的距离。

代码:

1.Test.java

 /**
* 主类Test,包含一个主方法;
* 主方法功能:接受两个点坐标的输入,创建两个点的对象,调用distance方法计算输出两个点之间的距离
*/ package Point;
import java.util.Scanner; public class Test {
public static void main(String[] args) {
double x1,y1,x2,y2; //x1,x2,y1,y2代表两个点的坐标;
System.out.print("请输入第一个点坐标:");
Scanner reader = new Scanner(System.in);
x1 = reader.nextDouble();
y1 = reader.nextDouble();
System.out.print("请输入第二个点坐标:");
x2 = reader.nextDouble();
y2 = reader.nextDouble();
Mypoint q1 = new Mypoint(x1, y1); //创建对象;
Mypoint q2 = new Mypoint(x2, y2); //创建对象;
System.out.print("两点间距离是"+Mypoint.distance(q1, q2));
} }

2.Mypoint.java

 /**
* 类中包含两个成员变量 x,y,三个方法分别是无参构造方法,有参构造方法,distance方法;
* 成员变量x,y分别表示一个点的横坐标和纵坐标;
* 无参构造方法创建原点(0,0),有参构造方法是根据参数指定的坐标创建点,distance方法的功能是计算主类中输入两个点之间的距离
*/ package Point; public class Mypoint {
private double x;
private double y; public double getX(){ //访问器
return x;
}
public void setX(int x){ //修改器
this.x = x;
}
public double getY(){
return y;
}
public void setY(int y){
this.y = y;
}
Mypoint(){ //无参构造方法
x = 0;
y = 0;
}
Mypoint(double x2, double y2){ //有参构造方法
this.x = x2;
this.y = y2;
}
static double distance(Mypoint p1, Mypoint p2){ //计算两个点之间的距离
double x1 = p1.getX();
double x2 = p2.getX();
double y1 = p1.getX();
double y2 = p2.getX();
return Math.sqrt((x1 - x2) * (x1 - x2) + (y1 - y2) * (y1 - y2));
}
}

运行结果:

Java.work6 stasic、this、包总结作业20194651的更多相关文章

  1. week13《java程序设计》第13次作业总结

    week13<java程序设计>第13次作业总结 1. 本周学习总结 以你喜欢的方式(思维导图.OneNote或其他)归纳总结多网络相关内容. 答: 1.IP与端口:ip和域名相对应,可找 ...

  2. Week06《Java程序设计》第六次作业总结

    Week06<Java程序设计>第六次作业总结 1. 本周学习总结 1.1 面向对象学习暂告一段落,请使用思维导图,以封装.继承.多态为核心概念画一张思维导图或相关笔记,对面向对象思想进行 ...

  3. 201621123080《java程序设计》第六周作业总结

    201621123080<java程序设计>第六周作业总结 1. 本周学习总结 2. 书面作业 clone方法 1.1 在test1包中编写Employee类,在test2包中新建一个Te ...

  4. C#调用java类、jar包方法(转)

    一.将已经编译后的java中Class文件进行打包:打包命令JAR 如:将某目录下的所有class文件夹全部进行打包处理: 使用的命令:jar cvf test.jar -C com/ . 其中tes ...

  5. java编译错误 程序包javax.servlet不存在javax.servlet.*

    java编译错误 程序包javax.servlet不存在javax.servlet.* 编译:javac Servlet.java 出现 软件包 javax.servlet 不存在 软件包javax. ...

  6. C#调用java类、jar包方法

    一.将已经编译后的java中Class文件进行打包:打包命令JAR 如:将某目录下的所有class文件夹全部进行打包处理: 使用的命令:jar cvf test.jar -C com/ . 其中tes ...

  7. 将java源文件制成jar包

    很多人都在苦恼,如何将写好的程序代码能在日后随时调用和配置在项目中运行 今天,就让梦逸来给大家分享这个过程 首先,创建好一个文件夹,文件夹名称随意 这个文件夹中是用来存放java源文件( 未编译的 x ...

  8. java基础十[包、Jar存档文件和部署](阅读Head First Java记录)

    将Java的class文件生成为可执行的Java应用程序.Java应用程序有三种:完全在本机执行的Jar(例如本机的GUI可执行程序):完全在服务器端远程执行的(例如浏览器来进行存取):介于两者之间的 ...

  9. java开发常用jar包介绍(转载)

    jta.jar 标准JTA API必要 commons-collections.jar 集合类 必要 antlr.jar  ANother Tool for Language Recognition ...

随机推荐

  1. 「SP122」STEVE - Voracious Steve 解题报告

    SP122 STEVE - Voracious Steve 题意翻译 Problem Steve和他的一个朋友在玩游戏,游戏开始前,盒子里有 n个甜甜圈,两个人轮流从盒子里抓甜甜圈,每次至少抓 1个, ...

  2. ### Error querying database. Cause: java.lang.IllegalArgumentException: invalid comparison: cn.xiaojian.blog.po.BlogType and java.lang.String ### Cause: java.lang.IllegalArgumentException: ...

    ### Error querying database. Cause: java.lang.IllegalArgumentException: invalid comparison: cn.xiaoj ...

  3. java 多线程 快速入门

    ------------恢复内容开始------------ java 多线程 快速入门 1. 进程和线程 什么是进程? 进程是正在运行的程序它是线程的集合 进程中一定有一个主线程 一个操作系统可以有 ...

  4. kmp算法初步理解

    123456789 abbdaxnds Next   01212 第三位看第二位b,第二位和第三位相同,都是b,所以第三位的next是第二位的next加1,即1+1=2 第四位看第三位b,第四位d与第 ...

  5. Django 博客实现简单的全文搜索

    作者:HelloGitHub-追梦人物 文中所涉及的示例代码,已同步更新到 HelloGitHub-Team 仓库 搜索是一个复杂的功能,但对于一些简单的搜索任务,我们可以使用 Django Mode ...

  6. Deepin Linux 实体机安装

    Deepin Linux 实体机安装 1.下载ISO镜像并刻录到U盘上 系统ISO镜像下载 深度技术 刻录工具下载 深度技术(下方有深度启动盘制作工具下载) 这两个都下载好之后,打开刻录工具,选择镜像 ...

  7. 7个效果震憾的HTML5应用组件

    在HTML5的世界里,任何文本.图像都可以变得令人难以想象,很多HTML5应用也都已经随着浏览器的升级而变得运行飞速,而且兼容性也越来越好.下面为大家介绍7款效果震憾的HTML5应用组件,HTML5是 ...

  8. Java 用链表实现栈和队列

    栈 是一种基于后进先出(LIFO)策略的集合类型.当邮件在桌上放成一叠时,就能用栈来表示.新邮件会放在最上面,当你要看邮件时,会一封一封从上到下阅读.栈的顶部称为栈顶,所有操作都在栈顶完成. 前面提到 ...

  9. AD19覆铜与边框间距设置方法

    转载请注明出处,并附带本文网址https://www.cnblogs.com/brianblog/p/9894867.html, 由于高版本AD不能将机械层直接转变为KEPP OUT LAYER层,所 ...

  10. Docker + node(koa) + nginx + mysql 线上环境部署

    在上一篇 Docker + node(koa) + nginx + mysql 开发环境搭建,我们进行了本地开发环境搭建 现在我们就来开始线上环境部署 如果本地环境搭建没有什么问题,那么线上部署的配置 ...