《Java程序设计》实验报告(二)之面向对象编程基础

news2024/9/20 20:43:22

实验内容及步骤:

  1. 编写不带构造函数的类并测试。(学生类、圆类)

(1)代码:

class Student {

    String name="张三";

    int age=20;

    String sex="男";//gender

    String getName(){

        return name;

    }

    void setName(String newName)

    {

        name=newName;

    }

    void read()

    {

        System.out.println("我是"+name+"年龄:"+age+",我正在学习!");

    }

    void c(Student student)

    {

        student.name="王琳";

        student.age=200;

        student.sex="male";

    }

    public static void main(String[] args)

    {

        Student student=null;

        student=new Student();

        System.out.println(student);

        student.read();

        Student student1=new Student();

实验内容及步骤:     

        System.out.println(student1);

        student1.read();

        Student student2=student;

        System.out.println(student2);

    }

}

Test:

public class Test

{

    public static void main(String[] args)

    {

        Student student=new Student();

        Student s=new Student();

        student.name="李四";

        student.setName("李四");

        student.age=22;

        student.sex="女";

        System.out.println(student.getName());

        student.read();

        student.c(student);

        student.read();

        s.name="张三";

        s.age=100;

        s.sex="female";

        student=s;

        student.read();

        s.read();

    }

}

(2)运行结果:

  1. 编写带构造函数的类。(学生类、圆类)

(1)代码:

实验内容及步骤:

public class Circle

{

    private double radius;

    // 构造函数

    public Circle(double radius)

    {

        this.radius = radius;

    }

    public double getRadius()

    {

        return radius;

    }

    public double getDiameter()

    {

        return 2 * radius;

    }

    public double getCircumference()

    {

        return 2 * Math.PI * radius;

    }

    public double getArea()

    {

        return Math.PI * radius * radius;

    }

}

Test:

public class Test {

    public static void main(String[] args) {

        Circle circle = new Circle(5.0);

        System.out.println("圆的半径:" + circle.getRadius());

        System.out.println("圆的直径:" + circle.getDiameter());

        System.out.println("圆的周长:" + circle.getCircumference());

        System.out.println("圆的面积:" + circle.getArea());

    }

}

(2)运行结果:

实验内容及步骤:

  1. 编写有静态方法的类。(求最大值、求和)

(1)代码:

public class MathUtils

{

    public static int findMax(int[] numbers)

    {

        if (numbers == null || numbers.length == 0)

        {

            throw new IllegalArgumentException("数组不能为空");

        }

        int max = numbers[0];

        for (int i = 1; i < numbers.length; i++)

        {

            if (numbers[i] > max)

            {

                max = numbers[i];

            }

        }

        return max;

    }

    public static int sum(int[] numbers)

    {

        if (numbers == null || numbers.length == 0)

        {

            throw new IllegalArgumentException("数组不能为空");

        }

        int sum = 0;

        for (int number : numbers)

        {

            sum += number;

实验内容及步骤:

}

        return sum;

    }

}

Test:

public class Test {

    public static void main(String[] args) {

        int[] numbers = {2, 5, 1, 8, 4};

        int maxValue = MathUtils.findMax(numbers);

        System.out.println("最大值:" + maxValue);

        int sumValue = MathUtils.sum(numbers);

        System.out.println("求和结果:" + sumValue);

    }

}

  1. 运行结果:

4、编写对包操作的程序。(学生类及测试类分别放到两个包里)

(1)代码:

public class Student
{
    private String name;
    private int age;
    public Student(String name, int age)
    {
        this.name = name;
        this.age = age;
    }
    public String getName()
    {
        return name;
    }
    public void setName(String name)
    {
        this.name = name;
    }
    public int getAge()
    {

实验内容及步骤:

return age;

}
    public void setAge(int age)
    {
        this.age = age;
    }
}

Test:

public class Test {
    public static void main(String[] args) {
        Student person1 = new Student("张三", 20);
        System.out.println("姓名:" + person1.getName());
        System.out.println("年龄:" + person1.getAge());
        Student person2 = new Student("李四", 25);
        System.out.println("姓名:" + person2.getName());
        System.out.println("年龄:" + person2.getAge());
    }
}

(2)运行结果:

你的问题:

  1. 静态成员访问非静态成员的限制:在静态方法中只能访问静态成员,无法直接访问非静态成员。
  2. 编写带构造函数的类时,遇到构造函数调用错误、对象实例化错误问题。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1437550.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之RichText组件

鸿蒙&#xff08;HarmonyOS&#xff09;项目方舟框架&#xff08;ArkUI&#xff09;之RichText组件 一、操作环境 操作系统: Windows 10 专业版、IDE:DevEco Studio 3.1、SDK:HarmonyOS 3.1 二、RichText组件 鸿蒙&#xff08;HarmonyOS&#xff09;富文本组件&#xff0c;…

鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之Video媒体组件

鸿蒙&#xff08;HarmonyOS&#xff09;项目方舟框架&#xff08;ArkUI&#xff09;之Video媒体组件 一、操作环境 操作系统: Windows 10 专业版、IDE:DevEco Studio 3.1、SDK:HarmonyOS 3.1 二、Video媒体组件 用于播放视频文件并控制其播放状态的组件。 子组件 无 接口…

8.0 Zookeeper 四字命令教程详解

zookeeper 支持某些特定的四字命令与其交互&#xff0c;用户获取 zookeeper 服务的当前状态及相关信息&#xff0c;用户在客户端可以通过 telenet 或者 nc&#xff08;netcat&#xff09; 向 zookeeper 提交相应的命令。 安装 nc 命令&#xff1a; $ yum install nc …

国密SM2算法进行数据的加密、签名和验签、解密

一、背景介绍 数据的加解密有很多种方式&#xff0c;几种常用的加密算法如下&#xff1a; DES&#xff08;Data Encryption Standard&#xff09;&#xff1a;对称算法&#xff0c;数据加密标准&#xff0c;速度较快&#xff0c;适用于加密大量数据的场合&#xff1b; 3DES&…

黄金交易策略:heiken ashi smoothed与macd快慢指标协同工作

第2点应该是有很大的优化空间 推荐阅读&#xff1a;Nerve Knife.ex4黄金交易策略_黄金趋势ea-CSDN博客

【chromium】windows构建base库 3:gn + vs2022 args 设置及debug x86 构建

GN 构建配置GN 构建配置 此页面提供了 GN 构建的一些常见构建设置。它假设您已经获得了 Chromium checkout。 也可以看看 从命令行运行“gn help”。 所有 GN 文档 GN 快速入门指南 GN 参考 (一个网页中“gn help”中所有内容的转储)。 了解 GN 构建标志 回想一下,在 GN …

Redis(02)——事务管理

事务概念 Redis事务的本质是一组命令的集合。事务支持一次执行多个命令&#xff0c;一个事务中所有命令都会被序列化&#xff0c;在事务执行过程中&#xff0c;会按照顺序串行化执行队列中的命令&#xff0c;其他客户端提交的命令请求不会插入到事务执行命令序列中 Redis事务…

QT设置qss

Qt设置qss文件&#xff08;设置在qrc中&#xff09; 1、右击项目选择添加新文件 2、在弹出的对话框中选择Qt -> Qt Resource File 3、随便起一个名称 4、在代码路径下新建一个stylesheet.qss文件&#xff0c;随便写入一些样式 5、右击resources.qrc&#xff0c;选择添加…

go modules使用

创建项目 在使用GoLand创建项目的时候&#xff0c;会自动创建对应的go.mod文件。 创建完后 创建文件 创建一个main.go的文件&#xff0c;里面print一个hello world。 在运行时可以设置是否采取先生成文件再运行。 为空的话则不输出。 下面的Environment为设置运行的环境…

数据恢复软件应该怎么选?看这篇就够了

存储数据的选择有很多&#xff0c;例如计算机硬盘、智能手机、平板电脑、闪存驱动器和存储卡。然而&#xff0c;所有这些都可能在某个时刻失败。我们当中谁没有不小心删除过重要的文档或照片&#xff1f; 如果最坏的情况发生&#xff0c;仍然有希望。一种选择是聘请数据恢复服…

【Linux】线程Pthread的概念 | NPTL线程库函数

创作不易&#xff0c;本篇文章如果帮助到了你&#xff0c;还请点赞 关注支持一下♡>&#x16966;<)!! 主页专栏有更多知识&#xff0c;如有疑问欢迎大家指正讨论&#xff0c;共同进步&#xff01; &#x1f525;Linux系列专栏&#xff1a;Linux基础 &#x1f525; 给大家…

10个优化Instagram SEO的必学策略

Instagram SEO 是优化 Instagram 内容以使其在平台搜索结果中被发现的做法。如果你希望你可以更快的让你的Ins获得流量&#xff0c;做好SEO就成功了一半。Instagram 搜索结果包括相关内容、帐户、音频、主题标签和地点&#xff0c;下面为你总结10个策略技巧&#xff01; 一、In…

矩阵的正定(positive definite)性质的作用

1. 定义 注意&#xff0c;本文中正定和半正定矩阵不要求是对称或Hermite的。 2. 性质 3. 作用 &#xff08;1&#xff09;Axb直接法求解 cholesky实对称正定矩阵求解复共轭对称正定矩阵求解LDL实对称非正定矩阵求解复共轭对称非正定矩阵求解复对称矩阵求解LU实非对称矩阵求解…

【新书推荐】6.3 switch语句

本节必须掌握的知识点&#xff1a; 示例代码二十一 代码分析 汇编解析 6.3.1 示例二十一 ■switch语句形式 switch语句是一种多路判断语句&#xff0c;会根据不同的选项&#xff0c;跳转到不同的分支语句。 switch语句的语法格式&#xff1a; switch(Controlling Expr…

情报搜集神器:Spiderfoot 保姆级教程

一、介绍 SpiderFoot是一款开源的情报搜集和足迹分析工具&#xff0c;用于自动化收集有关目标的信息。它被设计为一种开放式情报&#xff08;OSINT&#xff09;工具&#xff0c;可以帮助安全专业人员、渗透测试人员和研究人员收集、分析和汇总来自互联网的信息。 以下是 Spid…

java的excel列行合并模版

1.效果 2.模版 <tableborder"1"cellpadding"0"cellspacing"0"class"tablebor"id"TABLE"><tr align"center" class"bg217"><td style"background-color: #008000; color: #ffffff;p…

华为数通方向HCIP-DataCom H12-821题库(单选题:441-460)

第441题 下面是一台路由输出的信息,关于这段信息描述正确的是 <R1>display bgp peerBGP local router ID : 2.2.2.2Local AS number : 100Total number of peers : 2 Peers in established state : 0Peer V AS MsgRcvd MsgSent OutQ Up/Down …

fgcvbnm

欢迎关注博主 Mindtechnist 或加入【Linux C/C/Python社区】一起探讨和分享Linux C/C/Python/Shell编程、机器人技术、机器学习、机器视觉、嵌入式AI相关领域的知识和技术。 磁盘满的本质分析 专栏&#xff1a;《Linux从小白到大神》 | 系统学习Linux开发、VIM/GCC/GDB/Make工具…

离谱!英国大学53%本科生用AI写论文!留学生该如何面对AI冲击?

随着AI的不断强化和更新换代&#xff0c;越来越多的学生开始使用人工智能辅助写论文&#xff0c;能省去不少信息搜集的时间。 英国大学从最开始的明令禁止&#xff0c;到如今也在逐步接受学生将它用做辅助工具&#xff1a; 然而&#xff0c;AI的使用其实还存在很多问题&#xf…

蓝桥杯省赛无忧 课件137 第20次学长直播带练配套课件

01 树上异或 02 森林的最大美丽值 03 古老文明的数字仪式