to String在object中写入的方法是输出数据存储的地址,不是数据,同理在equals()方法中,比较的也是两个数据的存储地址,而不是比较数据的本身,所以它本来的方法对于开发者来说是没有意义的,所以往往我们在写此方法时需要做的就是在所在类中重写to String 和equals()方法,从而使得输出的数据是自己想要的结果。并且需要注意的是:
当我们在测试中需要将输出的内容和结果赋值给相同类型的变量,才可以输出,如果不写,在运行程序时,则不能输出比较结果和自己想要输出的文字。
静态修饰符:static
在子类继承父类的静态常量时,在子类的方法体中可以直接调用父类的静态常量;在测试时,如果子类的对象想要调用父类中的静态常量,则需要定义一个和静态常量类型相同的变量被父类的静态常量赋值,才可以被输出。如果没有赋值给一个变量则程序会报错.
并且需要注意的是,如果父类中存在静态方法,则程序在运行时,一定会运行父类中的静态方法,因为静态它属于类而不属于对象,在父类中的非静态方法中,若子类重写了方法,那么运行程序时,程序运行的是子类的重写方法。
异常和错误
异常指的是在书写程序时,出现的问题java可以自行解决
错误指的是在写程序时,出现的问题java无法解决,需要开发者找出错误并且修改
try-catch中的try是试着运行程序,catch是捕捉异常,
fianlly是不管有没有异常最后都要输出finally体中的语句
fianlly只有唯一一个情况不能输出,即System.exit()括号内写入非0数值,则程序执行到此语句便不再运行之后的代码,即使是有finally。
如果一段代码中有fianlly和return,则程序执行到return时,不管条件是否合适,则程序都会跳转到finally,再去执行return。