Java.work6 stasic、this、包总结作业20194651
题目一:
编写一个类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的更多相关文章
- week13《java程序设计》第13次作业总结
week13<java程序设计>第13次作业总结 1. 本周学习总结 以你喜欢的方式(思维导图.OneNote或其他)归纳总结多网络相关内容. 答: 1.IP与端口:ip和域名相对应,可找 ...
- Week06《Java程序设计》第六次作业总结
Week06<Java程序设计>第六次作业总结 1. 本周学习总结 1.1 面向对象学习暂告一段落,请使用思维导图,以封装.继承.多态为核心概念画一张思维导图或相关笔记,对面向对象思想进行 ...
- 201621123080《java程序设计》第六周作业总结
201621123080<java程序设计>第六周作业总结 1. 本周学习总结 2. 书面作业 clone方法 1.1 在test1包中编写Employee类,在test2包中新建一个Te ...
- C#调用java类、jar包方法(转)
一.将已经编译后的java中Class文件进行打包:打包命令JAR 如:将某目录下的所有class文件夹全部进行打包处理: 使用的命令:jar cvf test.jar -C com/ . 其中tes ...
- java编译错误 程序包javax.servlet不存在javax.servlet.*
java编译错误 程序包javax.servlet不存在javax.servlet.* 编译:javac Servlet.java 出现 软件包 javax.servlet 不存在 软件包javax. ...
- C#调用java类、jar包方法
一.将已经编译后的java中Class文件进行打包:打包命令JAR 如:将某目录下的所有class文件夹全部进行打包处理: 使用的命令:jar cvf test.jar -C com/ . 其中tes ...
- 将java源文件制成jar包
很多人都在苦恼,如何将写好的程序代码能在日后随时调用和配置在项目中运行 今天,就让梦逸来给大家分享这个过程 首先,创建好一个文件夹,文件夹名称随意 这个文件夹中是用来存放java源文件( 未编译的 x ...
- java基础十[包、Jar存档文件和部署](阅读Head First Java记录)
将Java的class文件生成为可执行的Java应用程序.Java应用程序有三种:完全在本机执行的Jar(例如本机的GUI可执行程序):完全在服务器端远程执行的(例如浏览器来进行存取):介于两者之间的 ...
- java开发常用jar包介绍(转载)
jta.jar 标准JTA API必要 commons-collections.jar 集合类 必要 antlr.jar ANother Tool for Language Recognition ...
随机推荐
- 在Mac/linux上查找(并终止)进程锁定特定端口的几种方法
前言 无论是做网站还是做产品,经常使用到杀死某个进程的方法.制作脚本并熟悉运用是一个非常节省时间的方法. 基本命令 查找: [sudo] lsof -i :3000 杀戮 kill -9 方法一 ...
- AntDesign getFieldDecorator 获取自定义组件的值
AntDesign getFieldDecorator 获取自定义组件的值 1.自定义或第三方的表单控件,也可以与 Form 组件一起使用.只要该组件遵循以下的约定: (1)提供受控属性 value ...
- Java截图小程序源码
Java编写的全屏截图小程序 package cnom.test.testUtils; import java.awt.AWTException; import java.awt.Dimension; ...
- Django之models高级进阶技术详解
目录 一.常用字段 1.AutoField 2.IntegerField 3.CharField 4.自定义及使用char 5.DateField 6.DateTimeField 二.字段合集 三.字 ...
- Freemarker 的基础使用 (一)
以下内容来自:http://www.oschina.net/p/freemarker FreeMarker是一个模板引擎,一个基于模板生成文本输出的通用工具,使用纯Java编写. FreeMarker ...
- [论文翻译]Practical Diversified Recommendations on YouTube with Determinantal Point Processes
目录 ABSTRACT(摘要) 1 INTRODUCTION(简介) 2 RELATED WORK 2.1 Diversification to Facilitate Exploration(对应多样 ...
- 机器学习新手必看:Jupyter Notebook入门指南
参考网址:https://blog.csdn.net/guleileo/article/details/80490921
- jS Ajax 上传文件报错"Uncaught TypeError: Illegal invocation"
使用jquery ajax异步提交文件的时候报Uncaught TypeError :Illegal invocation错误,报错信息如图: 错误原因: jQuery Ajax 上传文件处理方式,使 ...
- BigDecimal的加减乘除,比较,小数保留
关于BigDecimal的一些常用基本操作记录 1 BigDecimal b1 = new BigDecimal("1.124"); 2 BigDeci ...
- 盘它!!一步到位,Tensorflow 2的实战 !!LSTM下的股票预测(附详尽代码及数据集)
关键词:tensorflow2.LSTM.时间序列.股票预测 Tensorflow 2.0发布已经有一段时间了,各种新API的确简单易用,除了官方文档以外能够找到的学习资料也很多,但是大都没有给出实战 ...