java一纸开卷复习资料

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

继承:子类与父类、表示类之间一种“属于”( is a )关系.子类继承父类的属性和方法.子类可以添加新的属性和方法.子类可以更改父类的属性或重载父类的方法. |*|*|没有extends,默认父类为Object.只能有一个父类,即单继承.子类继承父类的非私有部分.类继承具有传递性. |*|*|父类中的private部分子类不能直接引用.子类中新增加的属性和方法是对父类的扩展.子类中定义的与父类同名的属性是对父类属性的隐藏,同名的方法是对父类方法的重载或覆盖|*|*|若子类中没有构造方法,则执行父类中的无参构造方法;若子类定义了构造方法,则在创建新对象时,先执行父类的无参数构造方法,再执行自己的构造方法.对于父类中含有参数的构造方法,子类可以在自己的构造方法中应用super 调用它。 |*|*|若将子类对象赋给父类对象,则可以用显式或隐式实现,即可以直接将子类对象直接赋给父类对象;若将父类对象赋给子类对象,则必须使用显式转换,即强制类型转换。形参是父类对象,子类对象可为实参|*|*|多态性是面向对象程序设计的一个核心概念,它便于程序扩展。多态是指不同的类对象收到同一个消息可以产生完全不同的响应效果的现象.多态性的种类–静态的多态性重载–动态的多态性覆盖 |*|*|静态的多态性(重载):在编译时就能够被识别.识别方法:–参数的个数、类型、数据类型的排列顺序–返回值不能做为识别的标志 |*|*|识别类和对象• 面向对象设计的核心任务是确定程序中需要的类• 程序中的类可以是:–Java标准类库的一部分–或者是以前开发项目的类,本项目可以重用–需要新编写的类• 识别潜在类的一种方式是识别问题需求中所讨论的对象。• 对象通常是名词,对象提供的服务(方法)通常是动词。|*|*|

1、结构化程序设计的特点①程序设计=数据结构+算法②程序内容=过程+过程调用

2、面向对象程序设计特点(1)①所有待处理的内容都表示成对象;②对象间依靠相互发送消息或响应消息实现通信;③每个对象都有自己的惟一标识,以便区别属于同一个类的不同对象;④对象一定属于某个类,我们又将这个对象称为所属类的一个实例;⑤类是将具有共同属性的对象进行抽象的结果,它可以具有继承或被继承的层次关系。(2)优点:①能够实现对现实世界客体的自然描述;②可控制程序的复杂性;③增强程序的模块性;④可提高程序的重用性;⑤可改善程序的可维护性;⑥可适应新型的硬件环境(3) 抽象性、封装性、继承性、多态性.

3、类、对象、消息的概念,之间的关系(1)类:①类是一组具有相同属性特征的对象的抽象描述。②类可以有子类,同样也可以有父类,从而构成类的层次结构。③类之间主要存在三种关系。它们是:依赖()、聚合()和泛化()。(2)对象:①对象是用来描述现实世界中实体的部件,是面向对象软件系统在运行时刻的基本单位。②自治性,有一定独立操作能力;封闭性,有信息隐蔽能力;通信性,有与其他对象通信的能力;被动性,状态转换由外界刺激引发;暂存性,动态创建与消亡。(3)消息:①消息是一个对象要求另一个对象实施某项操作的请求。包含接收者和要求接收者执行的操作请求,而并没有说明具体的操作(由接收者决定)。②发送者发送消息,接收者通过调用相应的方法响应消息,这个过程被不断地重复。消息是驱动面向对象程序运转的源泉。(4)关系:①类是对象抽象的结果;对象是类的具体化,是类的实例。②消息传递是对象之间相互联系的惟一途径。

4、类之间的几种关系,举例说明①整体-部分(聚合):章—节—段—句—词或标点;(用成员变量实现)②一般-特殊(泛化):动画—二维动画、三维动画(用定义子类实现);

③依赖:课程—教师—学生(用成员变量实现)5、数据隐藏的概念,实现手段(1)概念:当子类(或子函数)中定义的新成员变量(或方法)与父类(或上一层函数)中某个成员变量(或方法)的名字相同时,子类(或子函数)会将父类(或上一层函数)相应的成员变量(方法)隐藏起来。(2)成员变量覆盖,成员方法覆盖或重载6、重载、覆盖成员方法的实现手段与意义(1) 子类中定义与父类具有相同签名的成员方法,或定义某个只是与父类中的某个成员方法名字相同成员方法。(2)实现多态,增加系统灵活性、理解性、扩展性。7、抽象类、接口、包的概念、特点及适用场合(1)抽象类:①抽象类表示概念性事物。概念是对类进行高层抽象的结果,可实例化的类是抽象概念的具体表现。②用abstract修饰符声明的类;抽象类不是一个完整的类,因此不能够被实例化;主要用来派生子类,且在子类中必须覆盖抽象类中的所有抽象方法。③进一步提取公共特征,提高代码重用率(2)接口:①接口是一种用来声明常量和操作行为格式的特殊抽象类。

②只允许包含常量和抽象方法;不能实例化。③它主要用来组织公用的常量,并统一操作行为的格式(共享常量、实现多态、统一同类事物的操作)(3)包:①包是类和接口的集合。②便于将若干个已存在的类或接口整体地添加到程序代码中;是避免出现类名冲突的现象8、类变量(静态)与实例变量区别、适用场合(1)①静态成员变量只在加载类时创建一个副本(未来创建的这个类的对象都将共享这个副本);②类被加载后,就立即创建类变量,类变量应该只被初始化一次;③类变量初始化器应位于类定义中,格式为:static{...... // 类变量初始}9、this,super,final意义: this表示的是当前对象本身,或者说是当前对象的一个引用。通过引用可以顺利地访问到对象,包括访问、修改对象的域、调用对象的方法;super表示的是当前对象的直接父类对象,是当前对象的直接父类对象的引用。直接父类是相对于其他“祖先”类而言的。若希望引用父类中的相应成员,需要使用关键字super 作为前缀。10、大整型类、大精度浮点类的使用高精度数值类BigInteger/BigDecimal①对象所包含的值不允许改变,通常会将两个值的运算结果用一个新对象表示。②对这对象表示的数值进行运算不会产生溢出。③由于数值被封装在对象中,所以不能直接用运算符号运算,必须使用相应的成员方法。11、异常概念,Java处理异常的基本过程(1)异常的概念:①运行程序的系统出现了异常。例如,系统软、硬件发生的故障,资源短缺等;②程序本身存在的问题。例如,语法错误、逻辑错误和运行错误等。

(2)在Java语言中,所说的异常是指那些影响程序正常运行的错误,而并不包含导致程序运行结果不正确的那些逻辑错误。(3) Java程序中,处理异常要经历三个主要阶段:抛出异常,捕获异常和处理异常(当一个异常被抛出并捕获后,既可以就地自行处理,也可以调用相应异常类的成员方法加以处理,还可以抛给调用该方法的成员方法处理)。12、事件处理机制(1) Java采用事件处理机制,即程序运行过程是不断地响应各种事件的过程,事件产生顺序决定了程序执行顺序,这是图形用户界面应用程序最重要的部分,是实现各种操作功能的重要途径。(2) 程序的执行过程由用户对GUI的操作行为控制。例如点击鼠标、敲击键盘、移动窗口等,所有这些用户行为都会引发特定的操作行为。任意给定的时刻,程序下面要做的取决于发生的事件。13、事件源、事件监听接口、监听器(1) 低级事件、语义事件(2) 低级事件类结构:AWTEvent < ComponentEvent < WindowEvent / InputEvent (MouseEvent/KeyEvent) / FocusEvent(3) 低级事件的监听器接口:EventListener < WindowtListener / MouseListener / MouseMotionListener/ KeyListener/ FocusListener(4)语义事件:ActionEvent / ItemEvent / ComponentEvent / ContainerEvent / TextEvent(5)语义事件的监听器接口:EventListener < ActionListener/ ItemListener/ AdjustmentListener/ ComponentListener/ ContainerListener/ TextListener14、适配器是API提供的一实现监听器接口的类。实现接口的类必须为监听器接口内声明的所有抽象方法提供它们的实现,而用户有时只需要应用其中的部分成员方法,但此时那些不需要使用的抽象方法也必须给予实现。15、容器( JFrame, JPanel )(1) 顶层容器、通用容器和专用容器(2) JFrame类实现窗口框架。(3)面板容器、带滚动条的视口容器、工具栏等,分别用JPanel、JScrollPane、JToolBar类实现。16、布局管理(1)按特定的策略定位每个组件在容器中的摆放位置及大小的一种特殊对象(2)FlowLayout(依次)、BorderLayout(5部分)、GridLayout(网格)、CardLayout17、Swing组件(1)在Swing中所有的组件都是JComponent类的子类,这个类为它的所有子类提供:工具提示、绘画和设置边框、可控制显示外观、定制属性、支持布局管理器、支持拖拽功能、双缓冲、可访问性、击键绑定。(2) JLabel、JToggleButton (JCheckBox / JRadioButton) / JButton、JTextPane / JPasswordField / JTextArea、JComboBox。

18、类定义的基本要求:●对象=属性(静态)+行为(动态)●类=域(成员变量)+(成员)方法●抽象:公共属性和方法●封装:私有成员变量+(set,get)

●类设计应该包含:①构造方法(无参,有参);②set()、get();③toString();④基本操作19、String与StringBuffer特点: Stringbuffer可以插入,删除,更改字符StringBuffer类private char value[]:用来存放字符串的缓冲区private int count:缓冲区中存放字符的个数;private boolean shared:缓冲区是否共享的标志public StringBuffer() 无参构造,默认缓冲区的16个字符。public StringBuffer(int length):缓冲区length个字符。public StringBuffer(String str):缓冲区的大小为字符串str的长度加上16,并将str存入缓冲区中。|*|*|Graphics与Graphics2D的主要区别:Graphics类以成员方法的形式封装了绘制各种图形的工具,而Graphics2D将绘制的所有图形用相应的类对象标识,这是它们两个的主要区别。与Graphics相比,Graphics2D提供的几何图形控制、坐标转换、颜色管理和文本布局的功能更加强大,使用起来更加灵活。Graphics2D类中提供的成员方法draw(Shape shape)使用当前属性绘制由shape带入的图形。fill(Shape shape)使用当前属性填充由shape带入的图形。drawString(String text)使用当前属性绘制文本。drawImage()使用当前属性显示图象。绘制图形必须先获得绘图类对象,它是Graphices类的子类对象。1、隐式创建方法对于Swing组件,利用paintComponet()方法的参数获取2、显式创建方法调用Component类的getGraphics() Graphics g=jPanel.getGraphices();此时要负责释放g.dispose()

鼠标事件:MouseEvent类:MouseListener(鼠标监听器接口,5个方法):

mouseClicked(MouseEvent e);mousePressed(MouseEvent e);mouseRelease(MouseEvent e);mouseEntered(MouseEvent e);mouseExited(MouseEvent e);MouseMotionListener(鼠标移动监听器接口,2个方法):mouseDragged(MouseEvent e);mouseMoved(MouseEvent e);MouseAdapter(对应MouseListener);MouseMotionAdapter(对应MouseMotionListener);如MouseListener接口的形式如下:public interface MouseListener extends EventListener{public void mouseClicked(MouseEvent e)}其对应的适配器为MouseAdapter,在适配器中实现了相应接口中的全部方法,只是方法体中的内容为空。

public abstract class MouseAdapter implements MouseListener{public void mouseClicked(MouseEvent e){}}

相关文档
最新文档