声明:本栏目所使用的素材都是凯哥学堂VIP学员所写,学员有权匿名,对文章有最终解释权;凯哥学堂旨在促进VIP学员互相学习的基础上公开笔记。 Object的方法: clone() Object 克隆 to String() String 转字符串 equals(Object) boolean 比较对象是否相等 get Class() Class 模板对象,通过此方法获得模板对象。 hashCode() int 转换成数字 gc 垃圾回收 hashCode(): int 转换成数字 hashCode()方法结构讲解: 首先传进来一个int hash值赋给h,然后if判断h等不等于0 ,并且长度大于0。大于0的话里面就有数据,小于0里面没有数据。 接着问char数组里面有没数据,没有直接return h 出去,有的话吧value char 数组交给 val变量,交给val变量后根据value的长度进行循环,循环过程中31*h + value 的第i个。(把char数组里面的数值取出来,进行累加,一直循环,循环累计后交给h ,return 反馈出去。) hash值计算:拿“a,b,c”计算。hash 值:a = 97 b=98 c=99 计算过程: 31 * 0 + 97 = 97 31 * 97 + 98 = 3105 31 * 3105 + 99 = 96354 计算值在int范围内,超过int 就变负数,超过负数又变回正数。(正变负,负变正。围绕着int范围) HashCode申请方式: 继承: 1.派生 2.规范:做一个父类,父类上只有空方法,要求子类重写这些方法。 实现一种编程方式,面向父类编程。(拿父类做类型,拿子类实现) 抽象类: 让你更好的实现父类编程。 父类上写了抽象方法子类就必须重写父类的抽象方法。 抽象类的规则: 1.抽象类不可以直接new对象。 2.java中不允许多继承。 3.要想创建抽象类对象,就必须有子类。 普通抽象类:有抽象方法,也有实现方法。(有抽象方法也有其他方法) 纯抽象类:只有抽象方法,无其他方法。(全部都是抽象方法) 定制了规范,要求子类必须实现。 抽象类申请方式:加abstract 关键字! 图1:父类 : 变成抽象方法可以不要大括号。 图2:子类:父类申请了抽象方法,必须要重写父类的抽象方法才可以,不然会报语法错误。 不是抽象方法可以不重写。 C++对抽象类的应用:多继承: 1.继承一个类 2.继承多个抽象类 接口:接口解释纯抽象类转变过来的。 java不能多继承,但是可以单一继承,可以实现更多接口。 里面只有方法声明没有方法实现: JDK1.7以后(接口可以申请静态方法) JDK1.9 (接口可以申请default实力方法) 接口是一个纯抽象类,java只可以单一继承,但是可以多继承多个抽象类(接口),这样更加的规范、严格。 接口的魅力: 数据库有很多个,每个数据库厂方数据库的访问方式都不一样,数据库会不定时更新,更新后的代码也会发生变动。 Java把数据库申请方式的方法申请到了接口之中,把接口做好了让数据库厂方去实现。就是java把接口的规范制定好了,让数据库厂方来实现接口的连接。 Java制定了游戏规则,至于完成的怎样就让业界的程序员来评价,评价好的就有市场,这样连接数据库出现问题,就与java无关,是数据库实现者没有实现好! 程序员只要学会一种接口的使用就可以了,不需要学习其他的连接方式就可以操作数据库。 |