Java基础类与对象.docx
- 文档编号:29104669
- 上传时间:2023-07-20
- 格式:DOCX
- 页数:21
- 大小:2.02MB
Java基础类与对象.docx
《Java基础类与对象.docx》由会员分享,可在线阅读,更多相关《Java基础类与对象.docx(21页珍藏版)》请在冰豆网上搜索。
Java基础类与对象
编译:
用专门的编译器,针对特定系统,将高级源码一次性翻译成该系统硬件执行的机器码;编译生成的机器码可以脱离开发环境,在特定的平台上独立的运行;
有些程序编译结束后还需要连接成大的模块;
缺点:
这些可执行程序无法移植到其他平台;如:
CC++FORTRANPascal
解释:
缺点:
不能脱离解释器独立运行;优点:
跨平台容易,
java:
先编译成平台无关的字节码*.class文件,再由java虚拟机负责解释执行,
JVM是Java程序跨平台的关键部分;
JVM具有指令集并使用不同的存储区。
负责执行指令,管理数据,内存,寄存器;
-d指定存放位置,“.”说明存放位置为当前路径;
UML:
OOA面向对象分析OOD面向对象设计OOP面向对象编程;
用例图:
用例(椭圆),角色(人)需求分析;
类图:
9/10/13
对象:
类:
引用:
(代词)
(1)指向对象的代词;
(2)引用变量的本质是指向对象的地址值
(3)引用通过地址值间接引用对象;
(4)引用不是对象
(5)当引用值是NULL时访问属性或方法会出现空指针异常
方法:
(动词)
(1)方法是对象的功能(行为),是动词;
(2)方法是数据加工过程(算法),利用数据的计算实现方法的功能
(3)方法在类中定义;
程序:
数据结构+算法;
对象+方法;
构造器:
(创建对象的过程)
(1)创建对象的过程就是用来创建对象(初始化对象属性);
重载:
名字一样参数不同具体行为不同;
/*继承关系:
*子类型继承父类型的属性和方法;父类的属性和方法被所有子类共享;
*子类型是多种多样的,子类型是多态的;
*
*业务关系:
四格方块(Tetromino)有7种:
(IJLSZTO)
*实现方式:
*利用继承关系实现,其中四格方块是父类型,七种方块是子类型,在父类中定义四格数组属性,子类型就自动继承了4格属性;
*实现:
*定义四格方块类Tetromino(属性:
4格,方法:
下落)
*子类型继承了四格方块类的属性和方法;
*子类型要定义构造器,初始化格子的位置;
**/
9/11/13
继承:
1.表达父子类型的关系;
2.父类型的属性和方法可以被子类继承;
3.私有方法不能继承,构造器不能继承;
4.子类构造器中一定调用父类的构造器;(super())
5.父类型定义变量可以引用子类型对象,就是多态现象;
如:
随机生成某种方块
TetrominorandomOne(){}多态的返回值;
Tetrominot=randomOne();
6.在子类型中可以利用重写来修改从父类继承的方法;
7.Super可在子类中访问父类中什么的属性和方法;
修饰词:
限定属性/方法/类的访问范围;
private:
仅仅在类内部可见
public:
在任何地方都可见;
package(包)
protected:
默认:
/*抽象类:
*1.代表逻辑上的抽象概念;
*语法:
*2.使用abstract声明类;
*3.抽象类不能直接实例化(不能使用new创建对象);
*4.抽象类可以有抽象方法,使用abstract声明的方法;抽象方法不能有方法体。
*5.抽象类只能被继承,在具体子类中必须实现全部抽象方法;
*6.抽象类可以定义变量,引用具体子类的实例(对象);
**/
9/12/13
Java源文件结构
1.Java文件可以有多个子类,Java源文件中只能有一个公有类文件名要与公有类一致;
如果没有公有类,文件名与某个类名一致;
公有类可以在任何位置可见,可以跨包访问,文件中的其他类是默认访问修饰,仅仅在当前包内部可见
一般情况下:
一个源文件一个公有类;
2.关键字出现顺序
Package{0,1}(可以使用0到1个此语句)Java建议使用package;
Import{0,n}(可以使用0到n个此语句)Java默认导入java.lang.*;
Class{1,n}
Static静态的:
属于类的资源,使用类名访问;
静态属性:
只有一份的变量
静态方法:
属于类的方法,可以使用类名直接访问;静态方法中没有this引用;
静态代码块:
是在类加载期间执行的代码块;
Final:
变量:
只能初始化,不能再修改;
Staticfinal常量;PublicstaticfinalintROWS=20;
内部类:
就是在类内部定义的类;
1.内部类往往用于封装类的实现,避免暴露细节,限制类的访问范围;
类的访问范围比较:
公有类:
任何位置可见;
同包类:
当前包内可见;
内部类:
一般用于类内部可见;
局部内部类:
匿名类,仅在方法内部可见;
Tetromino
PrivateTetrominoconstructor
randomOnenew方块;
1.获取键盘事件;绑定在下箭头按下时候执行下落动作;
2.在4格方块上添加下落动作(方法)
3.调用界面的重绘;按照新数据重新绘制界面;
多态:
对象变量可以引用本类的对象也可以引用子类对象的现象叫多态;
核心原则:
计算机只能处理数据计算
程序:
数据结构+算法;
=对输入数据的算法加工得到输出数据的过程;
OOP(面向对象编程)是如何将业务过程转换为数据计算的方法;
面向对象的分析过程:
1.根据业务需求找到对象,分析对象之间的关系;
2.用合理的数据模型描述对象;将对象进行数量化,用数字来表达对象;
3.类的设计,定义类的属性;以及对象之间的关系;
注意:
要用面向对象的语法表达合理的逻辑关系;
4.实现概要设计(概要编码)
5.详细功能实现:
详细数据结构设计墙的设计(2维数组)4格方块的数据设计
6.界面绘制(利用JavaSwingAPI绘制界面,贴图)
7.功能算法设计:
动词就是方法;将功能映射到数学模型,研究数据的变化规律找出算法策略;
8.时间绑定;(利用JavaSwingAPI实现事件绑定)
9.调试:
最重要原则:
知道理想的数据输入和数据输出(通过数据模型)
模拟计算得出。
在找到软件实际计算的数据,比较两种数据的不同,找出错误的原因。
接口(interface)
1.相当于一种抽象类
2.属性只能是常量,方法只能是抽象方法的
3.语法接近于抽象类;
4.子类实现接口(就是子类继承的接口)
5.接口可以实现“多继承”的逻辑关系;
复习:
标示符必须以字母下划线$开头;
重写:
子类重写父类的方法;
1.方法名相同;
2.返回类型必须与父类方法返回类型一致或是其子类;
3.修饰符的访问类型必须比父类大或者相同;
4.异常:
重载:
本类中的同名方法;
1.方法名相同,参数列表必须不同,包括参数类型,个数顺序;
2.重载其实是定义了一个新的方法;
原文件在SEExambymonth-ArrayTest;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 基础 对象