课堂实践

1.     使用自定义类:

验证结果:

2.     进行试验1

验证结果:

分析原因:

当“==”施加于原始数据类型变量时,是比较变量所保存的数据是否相等

当“==”施加于引用类型变量时,是比较这两个变量是否引用同一对象。

引用代表地址,所以“==”实际上相当于比较两个引用类型变量中保存的对象地址是否相同。

3.     如何比较两个对象的“内容”是否一样:

验证结果:                          重写基类得结果截图:

                                 

两个对象的“内容”,其实是指它们在某一时刻的所有字段的值,“内容相等”,其实是就“对应字段值”一致

4.     动手动脑1

Foo()没有构造函数,需要添加一个构造函数。或者在调用的时候加一个整数型的参数。

如果类提供了一个自定义的构造方法,将导致系统不再提供默认构造方法

5.     进行试验2

运行结果:

Java字段初始化归律:

  1. 执行类成员定义时指定的默认值或类的初始化块,到底执行哪一个要看哪一个“排在前面”。
  2. 执行类的构造函数。
  3. 类的初始化块不接收任何的参数,而且只要一创建类的对象,它们就会被执行。因此,适合于封装那些“对象创建时必须执行的代码”。

6.     动手动脑2

运行结果:

静态初始化的执行顺序:

  1. 静态初始化块只执行一次。
  2. 创建子类型的对象时,也会导致父类型的静态初始化块的执行。
时间: 2024-10-31 20:18:56

课堂实践的相关文章

《Java 程序设计》课堂实践项目汇总链接

1.<Java 程序设计>课堂实践项目-命令行参数 2.<Java 程序设计>课堂实践项目-mini dc 3.<Java 程序设计>课堂实践项目-Arrays和String单元测试 4.<Java 程序设计>课堂实践项目-类定义

# 20155336 2017-2018 1 《信息安全系统设计基础》2017-9-27课堂实践

20155336 2017-2018 1 <信息安全系统设计基础>2017-9-27课堂实践 第一题:vi 每个.c一个文件,每个.h一个文件,文件名中最好有自己的学号 用Vi输入图中代码,并用gcc编译通过 在Vi中使用K查找printf的帮助文档 提交vi编辑过程截图,要全屏,包含自己的学号信息 说起来很惭愧,第一次接触虚拟机,对很多地方都陌生,正好趁学习这门课程掌握一下虚拟机的基本操作. 首先创建一个文件夹,命名为text1.然后将第一道题的要求都录入进去.录入完毕后,输入`gcc *.

20155318 第十六周课堂实践——嵌入式基础

20155318 第十六周课堂实践加分作业 测试中错误部分的理解和学习 根据下图,完成对时分秒的提取和设置 课上提交的答案: 错误原因:没有注意时间变量和地址问题,应在修改为: #define Time_Addr 0xFFFFC0000 //实时钟芯片的IO映像基址是OxFFFFC0000 #define TIME *(volatile int *)(Time_Addr+2) //时间存放在基址+2的寄存器中 int getHours() { int time=TIME; return (tim

第四周课堂实践总结

课堂知识点总结 数组边界值即为其中的最大最小值 循环与递归 循环语句 for循环语句(循环体只有一条语句时,大括号最好不要省略) for(表达式1:表达式2:表达式3) { 若干语句 } while循环语句(循环体只有一条语句时,大括号最好不要省略) while(表达式) { 若干语句 } do-while循环语句 do{ 若干语句 }while(表达式); 递归 递归算法是一种直接或间接地调用自身的算法.在编写程序时,递归算法对解决一大类问题是十分有效的,它往往使算法的描述简洁而且易于理解.递

七牛云徐晶:基于 WebRTC 架构的直播课堂实践

8 月 18 日下午,在七牛云架构师实践日第三十期,七牛云教育行业产品研发总监徐晶进行了<基于 WebRTC 架构的直播课堂实践>为题的实战分享.? 本文是对演讲内容的实录整理.??作者简介:??七牛云教育行业产品研发总监,拥有 12 年互联网行业经验.擅长将传统行业与互联网结合,形成具有 Plus 效果的互联网产品.曾在阿里巴巴大文娱负责整个优酷直播业务,目前任职七牛云教育行业产品研发总监,构建互联网教育云计算模型,打造在线教育行业的云计算解决方案,突破传统教育壁垒.? 流媒体协议与功能的演

20172303 2018-2019-1 《程序设计与数据结构》第2周课堂实践修改报告

20172303 2018-2019-1 <程序设计与数据结构>第2周课堂实践修改报告 测试内容 写出链表中结点插入的操作代码: public static void InsertNode(Student Head, Student node){ } 需求分析:该题要求的是在一个链表的结尾插入一个新的结点 测试过程 设计思路: 创建一个临时的指针temp用于遍历整个链表直至找到结尾 将temp指向新创建的指针node 测试过程 首先,需要编写Student类.在这个类中定义构造函数(包括姓名.

20172303 2018-2019-1 《程序设计与数据结构》第5周课堂实践报告

20172303 2018-2019-1 <程序设计与数据结构>第5周课堂实践报告 课程:<程序设计与数据结构> 班级: 1723 姓名: 范雯琪 学号:20172303 实验教师:王志强 助教:张师瑜/张之睿 实验日期:2018年10月12日 必修/选修: 必修 测试内容 ASL测试 已知线性表具有元素{5,13,19,21,37,56,64,75,80,88,92},如果使用折半查找法,ASL是多少? 要求:写出结题过程 测试原理 ASL(Average Search Leng

20172321 第六周课堂实践修改报告

20172321 第六周课堂实践修改报告 20172321 第六周课堂实践修改报告 课程:<程序设计与数据结构> 班级: 1723 姓名: 吴恒佚 学号: 20172321 实验教师:王志强 测试日期:2018年10月19日 必修/选修: 必修 题目要求 错误题目及原因 错题1:二分查找 原因:这次二分查找的元素个数为偶数个,我的理解有点问题,所以把数字10查找了4次 错题2:散列查找 原因:对元素21的位置判断错误 题目分析及错题修改 二分查找 从有序列表的中间元素开始查找,如果中间元素不是

课堂实践5

验证课堂例子: TestInherits.java 结果截图:                         思考: 为什么子类的构造方法在运行之前,必须调用父类的构造方法?能不能反过来?为什么不能反过来? 子类的构造方法必须要调用父类的构造方法,有时候可以不写出来,当父类有无参数的构造方法时子类就可以不用写出来继承:假如有个A类   另一个B类继承A类  那么B类的构造方法里就要写public B()  {   super();   } 如果A类的构造方法没有参数,这句就可以省略,如果A类没

第十周课堂实践总结

知识总结 数据结构是指相互之间具有(存在)一定联系(关系)的数据元素的集合. 使用数据结构的三个原因是:效率.抽象和重用性. 数据结构的主要运算包括: 建立(Create)一个数据结构 消除(Destroy)一个数据结构 从一个数据结构中删除(Delete)一个数据元素 把一个数据元素插入(Insert)到一个数据结构中 对一个数据结构进行访问(Access) 对一个数据结构(中的数据元素)进行修改(Modify) 对一个数据结构进行排序(Sort) 对一个数据结构进行查找(Search) ..