ssm 框架 sptring+smvc+mybatis
反向工程:根据表生成对应的类
方法传参:
- 基本类型传参(八种基本类型)
int byte short long char double float boolean … - 引用类型传参
剩下的 首字母大写的都是引用类型,例如:String
封装:
增加属性的安全性
如果不封装,可以再任何地方直接 对象名.属性名,修改属性的值,很危险
-
把属性变为私有,在属性前加上修饰符 prvate。
-
加上 get 和 set 方法 每一对属性都有一对get/set方法。 get方法作用:获得属性值 set方法作用:给属性赋值
在实例化对象的时候,先实例化它的父类,如果父类还有父类,则先实例化父类的父类。
Object 类默认是所有类的父类,这个类比较特殊。
java中是单继承:就是一个类只有一个直接父类。
equals 方法 本来是Object的 ,这个方法是用来对比的。
对比对象的内存地址的
我们平时对比对象一般对比对象的额内容
对象的对比有两种方式:
- 对比内存地址
如果过内存地址一样,那么内容肯定一样;如果内存地址不一样,内容可能一样。 - 对比内容
如果内容不一样,两个对象的地址肯定不一样;如果内容一样,两个对象的地址有可能一样。
Object 的equals() 方法对比的是地址。String 的equals() 方法进行了重写,对比的是对象的内容。所以字符床的对比要用equals() 而不是==
结论:Object 的 equals 是对比两个对象的内存地址;String 的 equals 是对比两个对象的内容
练习:改造DVD管理
面试题:
在实例化子类的时候,肯定会实例化父类
先实例化父类,后实例化子类
为什么?
只有先先实例化了父类,父类中的属性和方法初始化之后
子类才可以调用父类的属性和方法