1、关键字
(1)this:表示当前正在被操作(调用)的对象
在构造方法中调用本类的某一个构造方法
(2)super: 本类的父类对象(常用在在子类中调用父类方法时)
在子类的构造方法中调用父类的构造方法
(3)final:类---不能有子类,不能被继承
方法----不能在子类中被重写
属性----变量变为常量,不能被修改
(4)static:装载类:static声明的属性、代码块执行(static声明的方法在被调用时执行)
创建对象:非静态属性、代码块执行
声明属性: 全局属性,一个属性可以被对象所公用
修改一个对象的属性,其他对象的属性全部改变
对象.属性 相当于 类.属性
声明方法: 只与对象的类型有关
声明类: 可声明内部类,然后用外部类.内部类的形式使用
(5)优先顺序:在主方法所在类中定义的静态代码块(直只执行一次)——静态属性——主方法——实例化对象 ——普通属性——普通构造块——构造方法——所调用的方法
普通类中的静态代码块——构造块——构造方法
2、数组
(1)内存、外存、缓存
为什么需要重绘? 界面最小化时,缓冲会把所有数据清掉,等到再次打开时,重新从内存中调用数据;而画面显示的图形尚未保存到内存中。
读写速度:缓存最快,内存次之,外存最慢;
存储时间:缓存最短,内存次之,外存最长;
存储容量:缓存最小,内存次之,外存最大;
永久保存:外存;临时保存:CPU、内存。
(2)数据结构——就是装数据的容器,将不同数据以不同方式组合。
需要实现以下功能:装数据;取数据;容器长度(容器中所装的数据个数);删除指定数据;修改数据;插入数据。
(3)如何实现自定义队列
数组:线性、长度固定、带下标、连续地址的
队列:线性、长度不定、带下标
实现:两个数组,通过数组的指向改变。
(4)泛型的使用
泛型:在定义类时,不指定具体类型,而是给一个泛指类型,而是等到实例化时再指明。
3、重绘
(1)第一种重绘方式:是通过队列来实现的。
简单说就是通过队列来存储你画的信息。 然后再通过paint方法的重写(super、使用for循环遍历形状队列重新绘制图形 )实现重绘。
自定义队列(这里最好能够使用泛型。在这个自定义队列中,可以实现数据的增加、取得、删除、插入、修改以及队列长度的取得等功能。在窗体类中实例化自定义队列的对象,为了方便引用设置为了静态。)
定义一个抽象形状类,包含形状所共有的属性,和抽象方法
在监听器中实现图形的存储
在绘画面板处实现重绘
(2)第二种重绘方式:截屏之后遍历像素点实现重绘
其原理为获得一个截屏,用二维数组记录每一点的颜色。重绘时,每一点颜色展示出来。即可以重绘了。
由于截屏的方法需要用到机器人对象,所以首先创建一个机器人对象。(需注意的是,机器人不能通过new来直接创建。首先声明Robot属性、然后在构造方法中测试异常并实例化对象 )
截屏以及存储的实现。(注意Rectangle、BufferedImage、getRGB的使用。另外需要注意下标与坐标的区别:下标:先纵后横,先行后列;坐标:先横后纵,所以数组下标与点的坐标刚好相反并且最好不要使用窗体得到截屏的效果,否则会出现标题栏那一部分的偏差,最好选择使用绘画面板。)
重绘的实现(paint方法的重写)
(3)两种方式的优劣
当数据不是很大时,第一种方法,程序运行次数较少。
当数据较大时,第一种方法,程序运行次数较多,第二种就比第一种简单。
不管画成什么样,第二种方法, 记录的点颜色个数是一样的。而第一种随着形状的个数越来越多,存入的也越来越多。
- 浏览: 13418 次
- 性别:
相关推荐
JavaScript 课程内容总结 JavaScript 是一种广泛应用于网页开发的编程语言,以下是 JavaScript 的基础知识点总结。 数据类型 在 JavaScript 中,数据类型包括字符串(string)、数值型(number)、布尔型...
本总结将对物流信息技术课程中所涉及的核心知识点进行详细阐述。 课程中首先介绍的是电子数据交换(EDI),这是一种通过计算机通信网络,按照事先约定的格式进行数据交换的标准技术。在物流领域,EDI能够帮助企业...
软件工程课程总结学习目的、学习价值、用途、学习成果、学习内容等
在“html课程总结,accphtml课程总结”的主题下,我们可以深入探讨HTML的基本结构、元素、属性以及它在Web开发中的作用。 HTML由一系列的元素组成,这些元素通过标签来定义。每个HTML标签都由尖括号包围,如`<html>...
信息安全技术课程总结 本课程总结了信息安全技术的基础概念、发展阶段、信息安全服务、安全机制、PDR技术体系、纵深防御技术体系、信息安全内容、信息保密技术、信息认证技术、公钥基础设施等方面的知识点。 1. ...
编译原理课程总结 编译原理课程总结是编译原理课程的总结性笔记,涵盖了课程的主要内容、学习体会和心得。编译原理旨在编译程序构造的一般原理和基本方法,其内容主要包括语言和文法、词法分析、语法分析、中间代码...
本节课总结人工智能的基本概念、产生式系统、搜索策略、图搜索等知识点。 1. 人工智能的基本概念 人工智能是一门研究如何制造出人造的智能机器或者智能系统,以模拟人类智能活动的能力,以延伸人们智能的科学。...
(完整版)外贸英语函电课程总结.pdf
ACCP5.0--C#技术的基础和入门,课程总结,欢迎下载
旅游文化课程总结.doc
企业资源计划课程总结.pptx
### 计算机算法设计和分析课程总结 #### 一、算法的概念与重要性 算法是计算机科学中解决特定问题的一系列明确指令的集合。它不仅限于编程领域,而是涵盖了数学、工程等多个学科。算法的特点包括有输入、输出、...
管理信息系统的课程总结,可以更好的掌握书本上的重点哦
MATLAB课程结课总结.docx
MATLAB课程结课总结.pdf
J2EE软件工程师全部培训课程总结几乎包括了JAVA程序员和JAVA软件工程师要掌握JAVA核心技术的全部内容,内容包括:UML、ORALCE、JDBC、JSP、AJAX、SERVLET、JavaScript、Struts、JSF、Hibernate3.0、Spring、JMS、CVS、...
预测控制课程小结是学员对课程学习成果的深刻反思与总结,也是评价学员是否掌握预测控制这一先进控制策略的关键指标。其小结的撰写要求旨在引导学员深入探究预测控制理论,并结合自身的研究方向或兴趣领域,通过实际...
【课程总结撰写要求详解】 课程总结是对学习过程的回顾与提炼,它有助于巩固知识,提升理解和应用能力。在撰写课程总结时,遵循一定的结构规范至关重要。以下是对标题为“课程总结要求1”的描述中提到的各个部分的...