JAVA实验报告及第七周总结
JAVA第六周作业
实验报告五
第一题
1、设计一个类层次,定义一个抽象类--形状,其中包括有求形状的面积的抽象方法。 继承该抽象类定义三角型、矩形、圆。 分别创建一个三角形、矩形、圆存对象,将各类图形的面积输出。
注:三角形面积s=sqrt(p*(p-a)*(p-b)*(p-c)) 其中,a,b,c为三条边,p=(a+b+c)/2
实验代码
package Output;
abstract class Shuchu{
public abstract double area();
}
package Output;
import java.util.*;
class triangle extends Shuchu{
private double a;
private double b;
private double c;
private double p;
public triangle(double a,double b,double c) {
setA(a);
setB(b);
setC(c);
setP((a+b+c)/2);
}
public double area() {
return Math.sqrt(getP()*(getP()-getA())*(getP()-getB())*(getP()-getC()));
}
public double getA() {
return a;
}
public void setA(double a) {
this.a=a;
}
public double getB() {
return b;
}
public void setB(double b) {
this.b=b;
}
public double getC() {
return c;
}
public void setC(double c) {
this.c = c;
}
public double getP() {
return p;
}
public void setP(double p) {
this.p = p;
}
public void output1() {
System.out.println("三角形面积:"+area());
}
}
class rectangle extends Shuchu{
private double a;
private double b;
public double area() {
return a*b;
}
public rectangle(double a,double b) {
setA(a);
setB(b);
}
public double getA() {
return a;
}
public void setA(double a) {
this.a = a;
}
public double getB() {
return b;
}
public void setB(double b) {
this.b = b;
}
public void output2() {
System.out.println("矩形面积:"+area());
}
}
class circle extends Shuchu{
private double radius;
public double area() {
return (Math.PI*Math.pow(radius, 2));
}
public double getRadius() {
return radius;
}
public void setRadius(double radius) {
this.radius = radius;
}
public circle(double radius) {
setRadius(radius);
}
public void output3() {
System.out.println("圆面积:"+area());
}
}
package Output;
public class Test{
public static void main(String[] args){
triangle tr=new triangle(2,2,2);
rectangle re=new rectangle(1,2);
circle cr=new circle(1);
tr.output1();
re.output2();
cr.output3();
}
}
运行结果

第二题
1定义接口Shape,其中包括一个方法size(),设计“直线”、“圆”、类实现Shape接口。分别创建一个“直线”、“圆”对象,将各类图形的大小输出。
实验代码
package Diqizhou;
import Diqizhou.Shape;
interface Shape{
public void size();
}
class Xingzhuang{
public static void size(Shape shape) {
shape.size();
}
}
package Diqizhou;
import java.util.*;
class Straight implements Shape{
private double length;
public Straight(double length) {
setLength(length);
}
public void size() {
System.out.println("直线长度:"+getLength());
}
public double getLength() {
return length;
}
public void setLength(double length) {
this.length = length;
}
}
class Circle implements Shape{
private double radius;
public void size() {
System.out.println("圆面积:"+Math.PI*Math.pow(radius, 2));
}
public Circle(double radius) {
setRidus(radius);
}
public double getRadius() {
return radius;
}
public void setRidus(double radius) {
this.radius = radius;
}
}
package Diqizhou;
public class Consequence {
public static void main(String[] args){
Straight st=new Straight(1);
Circle cr=new Circle(1);
st.size();
cr.size();
}
}
运行结果

学习总结
1、一个栈内存只能够保存一个堆内存空间的地址。,若想再指向其他的堆内存空间,则必须先断开已有的指向才能分配新的指向。
2、只要是被封装的属性,则必须通过setter()和getter()方法设置和取得。
3、setter()方法进行内容得赋值。
4、类中全部属性都必须封装。
5、用private声明得属性和方法只能在其类的内部被调用,而不能在类的外部被调用。
6、若要强调是本类中的方法,也可以在调用时按“this.方法名称()”的形式编写。
7、main方法不写在抽象类(规范性)。
8、如果抽象类和接口都可以使用时,优先室使用接口,因为可以避免单继承的局限。
9、Object类中toString()方法可直接输出。
10、Object类中的equals()方法默认是比较地址。
学习心得
好好学习,天天向上。
JAVA实验报告及第七周总结的更多相关文章
- JAVA实验报告及第八周总结
JAVA第八周作业 实验报告六 实验一 编写一个类,在其main()方法中创建一个一维数组,在try字句中访问数组元素,使其产生ArrayIndexOutOfBoundsException异常.在ca ...
- JAVA实验报告及第九周总结
Java第九周作业 实验报告七 实验任务详情: 完成火车站售票程序的模拟. 要求: (1)总票数1000张: (2)10个窗口同时开始卖票: (3)卖票过程延时1秒钟: (4)不能出现一票多卖或卖出负 ...
- java实验报告&第三周学习总结
实验报告: 实验1:求水仙花数在C语言中求水仙花数是一个复杂且长的代码,在java中可以通过简单的代码来实现操作,找出水仙花数: 图例如下: 试验2:求13+23-33+43-53.........9 ...
- 第九周课程总结 & 实验报告(七)
第九周课程总结 一.多线程 1.线程的状态 2.线程操作的相关方法 二.Java IO 1.操作文件的类---File ()基本介绍 ()使用File类操作文件 .RandomAccessFile类 ...
- 20155310第一周JAVA实验报告
20155310第一周JAVA实验报告 实验内容 1.使用JDK编译.运行简单的Java程序: 2.使用Eclipse 编辑.编译.运行.调试Java程序. 实验要求 使用JDK和IDE编译.运行简单 ...
- 20145310第一周JAVA实验报告
20145310第一周JAVA实验报告 实验内容 1.使用JDK编译.运行简单的Java程序: 2.使用Eclipse 编辑.编译.运行.调试Java程序. 实验要求 使用JDK和IDE编译.运行简单 ...
- 第六周学习总结&java实验报告四
第六周学习总结&java实验报告四 学习总结: 上一周因为接近国庆假期,所以老师没有讲太多的新知识点,只要是带我们一起做了一个动物模拟变声器的实验,进一步了解和学习到继承的 有关知识点和应用: ...
- 第七次java实验报告
Java实验报告 班级 计科二班 学号20188437 姓名 何磊 完成时间 2019/10/25 评分等级 实验四 类的继承 实验内容 )总票数1000张:(2)10个窗口同时开始卖票:(3)卖票过 ...
- 20135231 JAVA实验报告三:敏捷开发与XP实践
---恢复内容开始--- JAVA实验报告三:敏捷开发与XP实践 20135231 何佳 实验内容 1. XP基础 2. XP核心实践 3. 相关工具 实验要求 1.没有Linux基础的同学建议先学习 ...
随机推荐
- 使用StringBuilder写XML遭遇UTF-16问题
http://www.cnblogs.com/jans2002/archive/2007/08/05/843843.html
- 【luoguP2158】 [SDOI2008]仪仗队
题目描述 作为体育委员,C君负责这次运动会仪仗队的训练.仪仗队是由学生组成的N * N的方阵,为了保证队伍在行进中整齐划一,C君会跟在仪仗队的左后方,根据其视线所及的学生人数来判断队伍是否整齐(如下图 ...
- Java基础__Java中集合类
ArrayList:有序.可重复.线程不安全.内部使用数组进行存储 LinkedList:有序.可重复.线程不安全.内部使用引用进行存储[可以很方便的进行插入.删除数据] Vector:有序.可重复. ...
- LeetCode 112. 路径总和(Path Sum)
题目描述 给定一个二叉树和一个目标和,判断该树中是否存在根节点到叶子节点的路径,这条路径上所有节点值相加等于目标和. 说明: 叶子节点是指没有子节点的节点. 示例: 给定如下二叉树,以及目标和 sum ...
- jenkins 基于角色的权限管理
如何给不同的用户分配不同的项目权限呢,今天来介绍这个 1 (全局安全设置)启用角色->2新建用户->3新建jenkins 全局角色 builder 并分配如下图3中所示权限(并分配Ove ...
- ubuntu16.04下如何安装dtc工具?
答: sudo apt-get install device-tree-compiler -y
- RCAN——Image Super-Resolution Using Very Deep Residual Channel Attention Networks
1. 摘要 在图像超分辨领域,卷积神经网络的深度非常重要,但过深的网络却难以训练.低分辨率的输入以及特征包含丰富的低频信息,但却在通道间被平等对待,因此阻碍了网络的表示能力. 为了解决上述问题,作者提 ...
- nginx开启目录浏览,解决中文乱码问题
nginx开启目录浏览,解决中文乱码问题 方法如下: server { listen 80; #listen [::]:80; server_name gongzi.liwenhui.xin gz.l ...
- jQuery常用Event-API
目的:对web页面(HTML/JSP)进行事件触发,完成特殊效果的处理 window.onload:在浏览器加载web页面时触发,可以写多次onload事件,但后者覆盖前者 ready:在浏览器加载w ...
- JavaScript中"Uncaught TypeError: Cannot set property 'innerHTML' of null"错误
写了一个函数,在调用时出错:"Uncaught TypeError: Cannot set property 'innerHTML' of null" 代码如下: <!DOC ...