函数
type
status
date
slug
summary
tags
category
icon
password
Property
 

JS中的变量是一种弱类型的,那么函数应该怎么定义呢?

 
 
 
 

java中的方法有重载机制,JS中的函数能重载吗?

重载的含义:方法名或者函数名一样,形参不同(个数、类型、顺序)
JS当中的函数在调用的时候,参数的类型没有限制,并且参数的个数也没有限制,JS就是这么随意(弱类型)
🍁 application的启动方式和生命周期
type
status
date
slug
summary
tags
category
icon
password
Property
 
 
 
 
 
 
 
 
🍃 AWT
type
status
date
slug
summary
tags
category
icon
password
Property
 
 

AWT简介

当 JDK 1.0发布时, Sun 提供了 一套基本的GUI类库,这个GUI类库希望可以在所有平台下都能运行 , 这套基本类库被称为"抽象窗口工具集 CAbstract Window Toolkit )",它为Java应用程序提供了基本的图形组件 。 AWT是窗口框架,它从不同平台的窗口系统中抽取出共同组件 , 当程序运行时,将这些组件的创建和动作委托给程序所在的运行平台 。 简而言之 ,当使用 AWT 编写图形界面应用 时, 程序仅指定了界面组件的位置和行为,并未提供真正的实现,JVM调用操作系统本地的图形界面来创建和平台 一致的对等体 。
使用AWT创建的图形界面应用和所在的运行平台有相同的界面风格 , 比如在 Windows 操作系统上,它就表现出 Windows 风格 ; 在 UNIX 操作系统上,它就表现出UNIX 风格 。 Sun 希望采用这种方式来实现 " Write Once, Run Anywhere " 的目标 。
 

AWT继承体系

所有和 AWT 编程相关的类都放在 java.awt 包以及它的子包中, AWT 编程中有两个基类:Component和MenuComponent。
  • Component:代表一个能以图形化方式显示出来,并可与用户交互的对象,例如 Button 代表一个按钮,TextField 代表 一个文本框等
  • MenuComponent:则代表图形界面的菜单组件,包括 MenuBar (菜单条)、 Menultem (菜单项)等子类
notion image
其中 Container 是一种特殊的 Component,它代表一种容器,可以盛装普通的 Component。
表单form
type
status
date
slug
summary
tags
category
icon
password
Property
notion image
  1. action属性等同于超链接的href属性,填写请求的url
  1. input标签属于输入域标签,input标签的type属性是text,表示文本框,是password,表示密码框
  1. input标签的type是submit表示提交按钮,该按钮可以提交表单,所谓表单的提交是发送请求url,并携带数据给服务器。
  1. 所有按钮的value属性都是用来设置按钮上显示的文本内容
  1. 发送请求并提交数据时,数据格式遵循HTTP协议,所有浏览器都会采用这种格式:
    1. url?name=value&name=value&name=value...,
      其中name是input标签的name属性,value是input标签的value属性
  1. 文本框和密码框的value不需要开发人员指定,用户填写的数据就是value。
  1. submit按钮放到form标签外面无法提交表单
  1. 普通按钮不具备提交表单的能力。
 
🐼 Properties
type
status
date
slug
summary
tags
category
icon
password
Property
 
在编写应用程序的时候,经常需要读写配置文件。例如,用户的设置:
配置文件的特点是,它的Key-Value一般都是String-String类型的,因此完全可以用Map<String, String>来表示它。
因为配置文件非常常用,所以Java集合库提供了一个Properties来表示一组“配置”。由于历史遗留原因,Properties内部本质上是一个Hashtable,但我们只需要用到Properties自身关于读写配置的接口。
 

读取配置文件

Java默认配置文件以.properties为扩展名,每行以key=value表示,以#开头的是注释。
以下是一个典型的配置文件:
可以从文件系统读取这个.properties文件:
🐼 Iterator
type
status
date
slug
summary
tags
category
icon
password
Property
 
 
Java的集合类都可以使用for each循环,ListSetQueue会迭代每个元素,Map会迭代每个key。
List为例:
实际上,Java编译器并不知道如何遍历List。能够编译通过只是因为编译器把for each循环通过Iterator改写为了普通的for循环:
这种通过Iterator对象遍历集合的模式称为迭代器
 
使用迭代器的好处在于,调用方总是以统一的方式遍历各种集合类型,而不必关系它们内部的存储结构。
例如,我们虽然知道ArrayList在内部是以数组形式存储元素,并且,它还提供了get(int)方法。虽然可以用for循环遍历:
🍃 菜单组件
type
status
date
slug
summary
tags
category
icon
password
Property
 
如果构建GUI界面,其实就是把一些GUI的组件,按照一定的布局放入到容器中展示就可以了。在实际开发中,除了主界面,还有一类比较重要的内容就是菜单相关组件,可以通过菜单相关组件很方便的使用特定的功能,在AWT中,菜单相关组件的使用和之前学习的组件是一模一样的,只需要把菜单条、菜单、菜单项组合到一起,按照一定的布局,放入到容器中即可。
 
常见的菜单相关组件:
notion image
常见菜单相关组件集成体系图:
notion image
 
菜单相关组件使用:
1.准备菜单项组件,这些组件可以是MenuItem及其子类对象
2.准备菜单组件Menu或者PopupMenu(右击弹出子菜单),把第一步中准备好的菜单项组件添加进来;
3.准备菜单条组件MenuBar,把第二步中准备好的菜单组件Menu添加进来;
正则表达式
type
status
date
slug
summary
tags
category
icon
password
Property
 
 
notion image

怎么创建正则表达式对象,怎么调用正则表达式对象的方法?

第一种创建方式:
 
第二种创建方式:使用内置支持类RegExp
 
关于flags:
🍃 Container容器
type
status
date
slug
summary
tags
category
icon
password
Property
 

Container继承体系

notion image
  • Winow是可以独立存在的顶级窗口,默认使用BorderLayout管理其内部组件布局
  • Panel可以容纳其他组件,但不能独立存在,它必须内嵌其他容器中使用,默认使用FlowLayout管理其内部组件布局
  • ScrollPane 是 一个带滚动条的容器,它也不能独立存在,默认使用 BorderLayout 管理其内部组件布局
 

常见API

Component作为基类,提供了如下常用的方法来设置组件的大小、位置、可见性等:
notion image
Container作为容器根类,提供了如下方法来访问容器中的组件
notion image
🍂 列表框
type
status
date
slug
summary
tags
category
icon
password
Property
 
 
JList 和 JComboBox 是极其相似的,它们都有一个列表框,只是 JComboBox的列表框需要 以下拉方式显示出来; JList 和 JComboBox 都可以通过调用 setRendererO方法来改变列表项的表现形式 。甚至维护这两个组件的 Model 都是相似的, JList 使用 ListModel, JComboBox 使用ComboBoxModel ,而 ComboBoxModel 是 ListModel 的子类 。

简单列表框

使用JList或JComboBox实现简单列表框的步骤:
  1. 创建JList或JComboBox对象
    1. 设置JList或JComboBox的外观行为
      1. 设置监听器,监听列表项的变化,JList通过addListSelectionListener完成,JComboBox通过addItemListener完成