方法的重写override
方法的重写(Override):方法的重写,一般用在父子继承中,子类通过重写父亲的方法,用自身的行为替换父亲的行为
重载(Overload):(形参不同)
Code examples:

Operation results:

2.toString方法
toString方法:Object类中定义有public String toString()方法/Object是所有类的根基类,所有的类都会默认继承
其返回值类型是String类型
Object中toString的定义:
public String toString() {
return getClass().getName() + "@" + Integer.toHexString(hashCode());
}
Code examples:

Operation results:

3.equals方法和 = =
两者区别:
= =在比较数值类型的值,其代表的是比较两个数值是否相等;若比较对象时,则比较地址
equals方法:来源Object,Object中的equals方法的源码如下:默认比较的是内存地址
public boolean equals(Object obj){
return (this ==obj);
}
可以通过子类重写equals方法实现比较内容是否相等
Code examples:

Operation results:

4.super关键字
super是直接父类对象的引用,可以通过super来访问父类中被子类覆盖的方法或属性。
可以对比this进行记忆
super直接引用父类, this:是对当前变量的引用
1.super关键字直接访问父类 。 super.属性/方法名()
2.使用super关键字访问父类的构造方法时,必须放在子类构造方法的第一行代码;
Code examples:




Operation results:

5.Java三大形态——封装
封装的含义:
需要让用户知道的暴露出来,不需要让用户知道的全部隐藏起来
封装的优点:
1.提高代码的安全性
2.提高代码的复用性
3.“高内聚”:封装细节,便于修改内部代码,提高可维护性
4.“低耦合”:简化外部使用,便于调用者使用,便于提高扩展和协作
封装有四大修饰符:
1.private(私有的)::只能在本类中访问
2.默认(友好的):本类中可以访问,同包下的其他类可以访问,“只认邻居”(同包下的其他类)“不认远方亲戚”(异包下的子类)
3.protected(受保护的):本类中可以可以访问,同包下的其他类也可以访问,异包下的其他类也可以访问
4.public:(公开的):所有类中都可以访问。
Code examples:


6.get/set方法 也叫Javabean:java组件
特征:
1.用privat修饰的私有属性
2.用public修饰共有的getter方法(取值)和setter(赋值)
3.无参构造方法(可不写)运行的时候会默认加上无参构造,但是,写了有参构造后,就必须加上无参构造
Code examples:


Operation results:

7.多态
多态:提高程序的扩展性和可维护性
多态指的是同一个方法调用,由于对象不同可能会有不同的行为
生活中的多态:学生(老师来了#.#,老师走了^-^)水(固态冰,液态水,水蒸气)以及金刚石和石墨
多态的要点:
1.多态是方法的多态,不是属性的多态(多态与属性无关)
2.多态的存在要有三个必要条件:继承,方法重写,父类引用指向子类对象
3.父类引用指向子类对象后,用该父类引用调用子类重写的方法,此时多态就出现了。
Code examples:

8.对象的转型cashing
向上转型:父类引用指向子类对象,我们称这个过程为向上转型,属于自动类型转换
将子类当作父类进行使用,只能访问父类和子类共有的方法和属性
向下转型:(强制转换):将父类型转换为子类型
Code examples:

9.final关键字
三个作用
1.使用final修饰的变量为常量,不能重新赋值
2.使用final修饰的类,不能被继承
3.使用final修饰的方法,不能被重写
Code examples:

Code examples:

