Java宝藏实验资源库(3)类

一、实验目的

  1. 理解面向对象程序的基本概念。
  2. 掌握类的继承的实现机制。
  3. 熟悉类中成员的访问控制方法。
  4. 熟悉ArrayList类的使用。

二、实验内容 过程及结果

*9.5Programming Exerc
ise the GregorianCal endar class) Java API has the GregorianCalendar class in the java. uti7 package, which you can use to obtain the year, month, and day of a date. The no-arg constructor constructs an instance for the current date, and the methods get(GregorianCalendar.YEAR), get(GregorianCalendar.MONTH),and get(GregorianCalendar. DAY_OF_MONTH) return the year, month, and day.Write a program to perform two tasks:
■ Display the current year, month, and day.
The GregorianCalendar class has the setTimeInMillis(long), which can be used to set a specified elapsed time since January 1, 1970. Set the value to 1234567898765L and display the year, month, and day.

*9.5编程Exerc Java API在Java中有GregorianCalendar类。Uti7包,您可以使用它来获取日期的年、月和日。无参数构造函数为当前日期构造一个实例,并使用get(GregorianCalendar. year)、get(GregorianCalendar. month)和get(GregorianCalendar)方法。DAY_OF_MONTH)返回年、月、日。编写一个程序来执行两个任务: ■显示当前的年、月、日。 GregorianCalendar类具有setTimeInMillis(long),可用于设置指定的经过时间。

运行代码如下 :

java 复制代码
package chapter09;
import java.util.GregorianCalendar;
class Code_05 {
    public static void main(String[] args){
        GregorianCalendar calendar = new GregorianCalendar();
        System.out.println(calendar.get(calendar.YEAR) + ":" + calendar.get(calendar.MONTH) + ":" + calendar.get(calendar.DAY_OF_MONTH));

        calendar.setTimeInMillis(1234567898765L);
        System.out.println(calendar.get(calendar.YEAR) + ":" + calendar.get(calendar.MONTH) + ":" + calendar.get(calendar.DAY_OF_MONTH));
    }
}

运行结果

*9.10 (Algebra: quadratic equations) Design a class named QuadraticEquation fora quadratic equation ax2 + bx + x = 0. The class contains:

■ Private data fields a, b, and c that represent three coefficients.

■ A constructor for the arguments for a, b, and c.

■ Three getter methods for a, b, and c

*9.10(代数:二次方程式)为二次方程式ax2+bx+c=0设计一个名 QuadraticEquation的类。这个类包括:

■ 代表三个系数的私有成员变量a、b和c。

■ 一个参数为a、b和c的构造方法。

■ a、b、c 的三个get 方法。

运行代码如下 :

java 复制代码
Main.java
import java.util.Scanner;
class Unite9Test10
{
    public static void main(String[] args)
    {
        Scanner input = new Scanner(System.in);
        System.out.println("请输入a,b,c:");
        double a = input.nextDouble();
        double b = input.nextDouble();
        double c = input.nextDouble();
        QuadraticEquation q =new QuadraticEquation(a,b,c);
        if(q.getRoot1()==0 && q.getRoot2()==0)
        {
            System.out.println("The equation has no roots");
        }else if(q.getRoot1()==q.getRoot2())
        {
            System.out.println(q.getRoot1());
        }else
        {
            System.out.println("root1 = "+q.getRoot1()+","+"root2 = "+q.getRoot2());
        }
    }
}
 QuadraticEquation.java
class QuadraticEquation
{
    private double a;
    private double b;
    private double c;
    public QuadraticEquation(double a,double b,double c)
    {
        this.a = a;
        this.b = b;
        this.c = c;
    }
    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 getDiscriminant()
    {
        return b*b - 4*a*c;
    }
    public double getRoot1()
    {
        double root1 = (-b +Math.sqrt(this.getDiscriminant()))/(2*a);
        if(getDiscriminant() >= 0)
        {
            return root1;
        }else
        {
            return 0;
        }
    }
    public double getRoot2()
    {
        double root2 = (-b - Math.sqrt(this.getDiscriminant()))/(2*a);
        if(getDiscriminant() >= 0)
        {
            return root2;
        }else
        {
            return 0;
        }
    }
}

运行结果

三、实验 结论

通过本次实验实践了二次方程式知识和操作,得到了编程与数学,逻辑思维息息相关的感悟,要想写优秀的代码,头脑必须清醒,思维必须井井有条,敲写代码时必须心无旁骛。

结语

细节决定成败

态度决定高度

注重细节,端正态度

!!!

相关推荐
Chen不旧6 分钟前
java基于reentrantlock/condition/queue实现阻塞队列
java·开发语言·signal·reentrantlock·await·condition
zl_vslam7 分钟前
SLAM中的非线性优-3D图优化之相对位姿Between Factor位姿图优化(十三)
人工智能·算法·计算机视觉·3d
Timmylyx05189 分钟前
CF 新年赛 Goodbye 2025 题解
算法·codeforces·比赛日记
闻缺陷则喜何志丹10 分钟前
【二分查找】P10091 [ROIR 2022 Day 2] 分数排序|普及+
c++·算法·二分查找
laplace012319 分钟前
Part 3:模型调用、记忆管理与工具调用流程(LangChain 1.0)笔记(Markdown)
开发语言·人工智能·笔记·python·langchain·prompt
寒水馨20 分钟前
com.github.oshi : oshi-core 中文文档(中英对照·API·接口·操作手册·全版本)以6.4.0为例,含Maven依赖、jar包、源码
java·后端
0和1的舞者27 分钟前
SpringBoot日志框架全解析
java·学习·springboot·日志·打印·lombok
only-qi28 分钟前
leetcode2. 两数相加
算法·leetcode
2501_9361460429 分钟前
鱼类识别与分类:基于freeanchor_x101-32x4d_fpn_1x_coco的三种鱼类自动检测
人工智能·分类·数据挖掘
鲨莎分不晴30 分钟前
拯救暗淡图像:深度解析直方图均衡化(原理、公式与计算)
人工智能·算法·机器学习