实践检验真理 学习创造未来
——许昌学院 “青春洋溢”软件开发设计实践队
2020年7月3日星期五,今天是许昌学院信息工程学院“青春洋溢” 软件开发设计实践队开展社会实践活动的第二天。经过昨天对相关开发工具和合作项目的了解,我们按照团队安排,今天需要对Java的基础知识进行梳理巩固。因为疫情原因,团队选择了各个成员居家进行学习,网络联系,通过各种平台互相沟通,及时反馈问题,询问老师及同学的方式。既保障了团队成员的身体健康安全,也能够培养我们的团队合作能力,协调能力!
今天上午主要是对一些Java知识的梳理与巩固,其中比较重要的是Java的反射和异常机制。AVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。反射可以根据类的信息在运行时动态的加载类。Class和java.lang.reflect一起对反射提供了支持。 java异常则是指在程序运行时可能出现的一些错误,如:文件找不到、网络连接失败、非法参数等。异常是一个事件,它发生在程序运行期间,中断了正在执行的程序的正常指令流。Java通过API中Throwable类的众多子类描述各种不同的异常。因而,Java异常都是对象。
下午大家学习了部分面试中容易出现错误的知识点,例如:
1.java中==和equals和hashCode的区别
== 属于运算符,一般多用于基本类型的比较,如int, float, double, char, boolean;作用于对象则会比较两者的内存地址
equals() 则是Object基类中提供的一个允许重写的方法,用于比较对象的值是否相等。 常见的例子有java包装类(如Integer、String、Float类型)的比较。若自定义一个继承自Object的类,由于父类的equals()仅return obj1 == obj2;需重写equals(),定义比较方法。
hashCode()是用于获得某一变量或对象的哈希值的方法,当比较对象的值相等时,对应hashCode值一定相等;反之,若 hashCode值相等,则实际值不一定相等。
*哈希值可以简单地理解为存储地址,hashCode()的本质是 一个由值到存储地址的映射关系(函数),即 存储地址=f(变量值) [形如 y=f(x)]。 这种方式可以方便地进行随机读写,简化判断等操作,但也存在发生存储地址冲突的可能性,也即不同的x对应了相同的y值。好的映射关系能减少冲突发生的次数,但不能完全避免。一个解决办法是使用链地址法。
2. int、char、long各占多少字节数
java中int为4个字节,char为2个字节,long为8个字节。(1Byte = 8bits)
3. int与integer的区别
int是基本数据类型,其默认值为0,可以进行赋值、比较、运算等操作,无法调用方法、实例化对象;
Integer是Java中的包装类,继承自Object基类,其默认值为null,需实例化后使用。
在最后我们团队成员对今天的学习情况进行了分析与总结,对于学习过程的错误和不足的地方进行回顾和记录,以防止在今后的学习和工作中再次犯下同样的错误。同时在今天的学习中,团队成员的合作逐渐由生涩变为熟悉,相信在后续的团队社会实践过程中,大家的配合,关系会越来越好!
(供稿人:罗锋)
http://www.dxsbao.com/shijian/266644.html 点此复制本页地址