Java学习day11
day11-课堂笔记
1、多态基础语法
【一个引例】
【动物类】
(包含了一个实例方法)

【猫类】
(包含了两个实例方法)

【鸟类】
(包含了一个实例方法)

【测试】




【第5点,Cat类继承了Animal类的方法,所以即便没有重写,也可以调用从Animal继承来的move()方法】
【instanceof】


【向下转型downcasting】




====================================================================================================================================
【Debug设置断点】

然后

弹出窗口(若没设置断点,则不会弹出)


【运行完后可以设置断点,然后按下图继续Debug】

【学会这几个快捷键F5:进入方法,按步执行 F6:执行下一行 F7:方法返回 F8:执行到下一个断点】

【如果上面的几个按钮变成灰色,可能是没设置断点,不设置断点不能Debug】

【设置多个断点的目的是,断点之间的程序不想看,可以 F8 直接跳至下一个断点】

【Debug的作用,就是看程序执行过程中各变量的值的变化,方便检查出错误】
=======================================================================================
2、多态在实际开发中的作用
【Master】

(括号中的 Cat c ,Cat是一个类名,类似String,c是被定义出的一个引用变量)
【喂哪只猫,哪只猫就吃】
【Cat】

【Test】


(在测试中创建主人对象,宠物对象)
【Dog】

【未使用多态】


【使用多态】
【Pet】

【Master应当面向抽象的Pet】

【继承了Pet的Dog】(猫狗是Pet的多态)

【继承了Pet的Cat】

【多态测试】

(传递新的子类对象)
【多态的作用】

【个人理解:以主人、宠物、猫、狗为例,子类猫和狗继承于父类宠物,猫和狗的吃鱼和啃骨头是基于父类宠物的多态(多样性),并且多态以方法覆盖(个性化)实现】
======================================================================================================================================
【如何链接源码】【类库包含三个部分:源码、字节码、帮助文档】



java下的src.zip文件是class文件的源码文件

若将src.zip剪切到其他位置(比如桌面),则在myeclipse中打开class文件后看不到源码


在弹出窗口中,找到src.zip文件所在位置,确定

注意:但仅部分代码能看,但不是所有的代码都能看到源码
Ctrl + Shift + T,快速查找class文件
Ctrl + Shift + R,快速查找resource
【返回值为String类型的方法在调用时不用new,直接 "字符串" . 方法名() ,因为String.class文件在方法区内存,不需要对象】
【工具类直接调用,不需要创建对象】
==========================================================================================================
3、final关键字

部分格式:public final ....,final int i ... ; ,final User u = new User(); ...

【用final修饰的变量只能被赋值一次】

【final修饰的引用,不可二次指向】

【final定义常量:public static final 类型 常量名 = 值】


======================================================================================================================
4、关于package和import





【上面的运行:java + 完整类名 com. .....】
【上面说的指定目录若不在集成开发环境中,则需手动创建】

【import】
【两个类不在同一个包内,使用import实现调用,可简化语句】

【import用于导入其他类】


【java.lang.* 包不需要被import引入,即lang包下的class文件不需要导入】

【Ctrl + Shift + O,快捷导入包,生成代码import 包名】
在当前包所在的类中,若想使用其它包内的类来创建对象,则要先在package和class之间,生成import语句,用于包的导入

Ctrl + Shift + O,快捷导入包界面

PS:在MyEclipse中,import和package,操作简便
=============================================================
【IDEA中的import会自动生成】
比如,下面调用Scanner,import会自动生成,不需要手动写

5、关于访问控制权限
【访问控制权限修饰符】

【小结】

【访问控制权限修饰符可以修饰属性、方法、类、接口...】

【类只能采用public和缺省的修饰符进行修饰(内部类除外)】

===================================================================================
【总结回顾】


浙公网安备 33010602011771号