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基础的同学建议先学习 ...
随机推荐
- PHP mysqli_get_host_info() 函数
定义和用法 mysqli_get_host_info() 函数返回 MySQL 服务器主机名和连接类型. 语法 mysqli_get_host_info(connection); 返回 MySQL 服 ...
- Java中equals方法null造成空指针异常的原因及解决方案
正文 bug描述 当查找已修改的与未修改的做比较的时候,之前为null的值调用equals方法与其他值做比较的时候,会导致抛出空指针异常 知识补充 关于null,你不得不知道的几件事: 1.null是 ...
- CodeForces 754C Vladik and chat ——(xjbg)
虽然是xjbg的题目,但是并不很好做. 题意不难理解.读入有点麻烦.做法是先正着推每段对话的?可能是谁说的,然后反过来选择即可.正推时,其中vis数组表示谁已经被用过了,cnt表示该组当前可以选择几个 ...
- mac -bash: ll: command not found
在linux系统下我们经常使用ll.la命令.但在mac系统时缺没有. 提示:-bash: ll: command not found. 这是因为ll.la不是真的命令,而是一些常用命令和参数搭配的别 ...
- Leetcode题目56.合并区间(中等)
题目描述: 给出一个区间的集合,请合并所有重叠的区间. 示例 1: 输入: [[1,3],[2,6],[8,10],[15,18]] 输出: [[1,6],[8,10],[15,18]] 解释: 区间 ...
- 【零基础】简单说说一键果体APP的AI
参考: https://www.jianshu.com/p/8c7a7cb7198c https://blog.csdn.net/gdymind/article/details/82696481 零. ...
- Navicat 12 for MySQL最新版激活(注册机)(转)(亲测有效)
Navicat 12 for MySQL最新版激活(注册机)(转)(亲测有效) 一.总结 一句话总结: 1.卸载自己机器上面的Navicat,安装下载的包里面的Navicat安装包,不然可能不行 2. ...
- laravel 链式组合查询数据
laravel 链式组合查询数据 一.总结 一句话总结: - 就是链式操作的基本操作,因为返回的都是一直可以进行链式操作的对象,所以我们接收返回的对象即可 - $result = DB::table( ...
- 我现在A函数开启事务,然后调用B函数,B函数中也开启了事务
有一点要知道,就是MYSQL不支持事务嵌套.所以PHP再包装,也是一个事务 laravel的事务嵌套,就是一个栈.事务A开启事务(真实开启)事务B开启事务(只是标记,并非真实开启了事务)事务B提交事务 ...
- pm2 配置方式
1.命令生产默认示例配置文件pm2 ecosystem或pm2 init,运行默认会生成ecosystem.config.js配置文件 module.exports = { apps: [ { nam ...