学习目标:
一、什么是面向对象
二、方法的定义和调用
三、类与对象的关系
四、封装
五、继承 extends classname
六、Super继承
七、方法重写(注意区分方法重写)
八、多态
九、instanceof
十、静态static
十一、抽象 abstract
十二、接口
十三、内部类
要有从宏观👉微观的思想
以类的方式组织代码,以对象的形式封装数据
一个项目只能有一个main方法
java类只有单继承无多继承,一个儿子只能由一个爸爸,但一个爸爸可以由多个儿子
java接口可以多继承
java中,所有类都默认直接或间接继承Object类
静态是一开始直接加载到内存里的
学习内容:
1、 classname objectnane = new classname()
2、 每个方法都有默认的构造器,
3、 对象通过引用来操作
4、 类是模板,对象是实例
5、 封装:该露的露,该藏的藏;数据的保护
6、程序设计要追求高内聚、低耦合
7、封装可以保护程序,统一接口规范,提高可维护性
8、子类继承了父类,就会拥有父类的全部方法,私有不继承
9、子类不能直接继承父类的私有属性,但可以通过方法来使用
10、super能直接避免误会调用父类属性 如 super.myname
11、a.super注意点:它调用父类的构造方法,一般默认隐藏调用
b.它只能在子类或构造方法中出现,
c. super和this不能同时调用构造方法
d. this 代表本身调用者的对象; super代表父类对象的应用
e. this 不继承时也能使用 ; super 只能在继承下使用
f. this 本类的构造 ; super 父类的构造
12、重写是子父类才有的(需要继承关系),子类重写父类的方法!
a.方法名必须相同;
b.参数列表必须相同;
c.修饰符,范围可以扩大,但不能缩小, public>protected>default>private
d.抛出的异常,范围可以缩小,但不能扩大
13、为什么要重写:
a.父类功能,子类不一定需要,或者不一定满足
b.方便管理
14、一个对象的实际类型是确定的,但指向的引用类型是不确定的
子类重写父类的方法,则执行子类的方法
多态注意事项:
a.静态方法不能重写,final不能重写,privater不能重写
b.属性不能重写
c.存在条件:有继承关系,子类重写父类方法,父类引用子类对象。 father objectname = new son();
15、objecta instanceof classb, a指向的类为b的子类时为true
16、public abstract class classname
17、接口:只有规范,自己没有方法
//接口里面不能写方法;
//接口里面默认有public abstract
//常量,public static final
// 类 可以实现接口 implements 接口
// 实现了接口的类,要重写接口里面的方法
// 接口可以实现多继承,但接口有定义
18、就是类里面定义类
19、
//没有名字初始化类,不用将实例保存到变量中~
new Apple().eat();
//内部类可以通过方法访问外部类的私有属性