HTML布局
摘要:使用<div>元素布局网页,div 元素是用于分组 HTML 元素的块级元素 使用<table>元素布局网页,可以使用HTML table标签来设计出漂亮的布局,但是table标签是不建议作为布局工具使用的 - 表格不是布局工具
阅读全文
addEventListener()和removeEventListener()
摘要:addEventListener() 方法用于向指定元素添加事件句柄,它添加的事件句柄不会覆盖已存在的事件句柄 可以向任何 DOM 对象添加事件监听,不仅仅是 HTML 元素;可以向同个元素添加多个同类型的事件句柄 addEventListener() 方法可以更简单的控制事件(冒泡与捕获),当你使
阅读全文
DOM元素节点
摘要:创建新的HTML元素——向 HTML DOM 添加新元素,必须首先创建该元素(元素节点),然后向一个已存在的元素追加该元素 删除HTML元素——必须首先找出要删除元素的父元素,然后才能删除指定节点
阅读全文
改变HTML和CSS
摘要:改变 HTML 元素的属性,语法:document.getElementById(id).attribute=新属性值 改变 HTML 元素的内容,语法:document.getElementById(id).innerHTML=新的 HTML 改变 HTML 元素的样式,语法:document.g
阅读全文
JavaScript对象
摘要:JavaScript 提供多个内建对象,比如 String、Date、Array 等等。对象只是带有属性和方法的特殊数据类型 创建直接的实例 使用对象构造器创建实例 有两种方式可以访问对象属性: .property 或 ["property"] 创建和使用对象的方法
阅读全文
查找HTML元素
摘要:在JavaScript中,有三种方法来查找HTML元素: 通过 id 找到 HTML 元素——document.getElementById(" "); 通过标签名找到 HTML 元素——getElementsByTagName(" "); 通过类名找到 HTML 元素——getElementsBy
阅读全文
for/in循环
摘要:for/in 语句循环遍历对象的属性,注意: for...in 循环中的代码块将针对每个属性执行一次
阅读全文
JavaScript计时事件
摘要:通过使用 JavaScript,我们有能力作到在一个设定的时间间隔之后来执行代码,而不是在函数被调用后立即执行。我们称之为计时事件。在 JavaScritp 中使用计时事件是很容易的,两个关键方法是: setInterval() - 间隔指定的毫秒数不停地执行指定的代码,clearInterval(
阅读全文
JavaScript对话框
摘要:警告对话框经常用于确保用户可以得到某些信息!当警告框出现后,用户需要点击确定按钮才能继续进行操作 确认对话框通常用于验证是否接受用户操作。当确认卡弹出时,用户可以点击 "确认" 或者 "取消" 来确定用户操作。当你点击 "确认", 确认框返回 true, 如果点击 "取消", 确认框返回 false
阅读全文
JavaScript输出显示数据
摘要:JavaScript可以通过不同的方式来输出数据: 使用window.alert()弹出警告框 使用document.write()方法将内容写到HTML文档中 使用innerHTML写入到HTML元素 使用console.log()写入到浏览器的控制台
阅读全文
初识JavaScript
摘要:JavaScript是Web开发中的一种轻量级的脚本编程语言,也是一种通用、跨平台的、基于对象和事件驱动并具有安全性的脚本语言。不需要进行编译,直接嵌入在HTML页面中,在浏览器中运行时被解释。JavaScript对字母大小写敏感 JavaScript:直接写入HTML输出流 JavaScript:
阅读全文
sqlServer如何新建用户名远程登入?
摘要:一、确认数据库服务开启 二、打开sqlServer,以Windows身份验证模式登入 三、‘对象资源管理器‘中展开安全性选项,右击登录名,选择新建登录名 四、点击‘服务器角色’,在右侧的服务器角色面板中,勾选 public 和 sysadmin 两项 五、点击“用户映射”,在右侧的面板中勾选该账号可
阅读全文
Java基础之线程障碍器
摘要:Java中,添加了障碍器类,为了适应一种新的设计需求,比如一个大型的任务,常常需要分配好多子任务去执行,只有当所有子任务都执行完成时候,才能执行主任务,这时候,就可以选择障碍器了。障碍器是多线程并发控制的一种手段
阅读全文
Java基础之线程原子量
摘要:所谓的原子量即操作变量的操作是“原子的”,该操作不可再分,因此是线程安全的。为何要使用原子变量呢,原因是多个线程对单个变量操作也会引起一些问题。在Java5之前,可以通过volatile、synchronized关键字来解决并发访问的安全问题,但这样太麻烦。Java5之后,专门提供了用来进行单变量多
阅读全文
Java基础之线程新特性条件变量
摘要:条件变量都实现了java.util.concurrent.locks.Condition接口,条件变量的实例化是通过一个Lock对象上调用newCondition()方法来获取的,这样,条件就和一个锁对象绑定起来了。因此,Java中的条件变量只能和锁配合使用,来控制并发程序访问竞争资源的安全。条件变
阅读全文
Java基础之线程阻塞栈
摘要:阻塞栈,与阻塞队列相似。不同点在于栈是“后入先出”的结构,每次操作的是栈顶,而队列是“先进先出”的结构,每次操作的是队列头;Java为阻塞栈定义了接口:java.util.concurrent.BlockingDeque,其实现类也比较多
阅读全文
Java基础之线程阻塞队列
摘要:阻塞队列是Java线程新特征中的内容,Java定义了阻塞队列的接口java.util.concurrent.BlockingQueue,阻塞队列的概念是,一个指定长度的队列,如果队列满了,添加新元素的操作会被阻塞等待,直到有空位为止。同样,当队列为空时候,请求队列元素的操作同样会阻塞等待,直到有可用
阅读全文
Java基础之线程信号量
摘要:Java的信号量实际上是一个功能完毕的计数器,对控制一定资源的消费与回收有着很重要的意义,信号量常常用于多线程的代码中,并能监控有多少数目的线程等待获取资源,并且通过信号量可以得知可用资源的数目等等,这里总是在强调“数目”二字,但不能指出来有哪些在等待,哪些资源可用
阅读全文
Java基础之线程锁
摘要:在Java中,专门提供了锁对象,利用锁可以方便的实现资源的封锁,用来控制对竞争资源并发访问的控制;这些内容主要集中在java.util.concurrent.locks包下面,里面有三个重要的接口Condition、Lock、ReadWriteLock Condition将Object监视器方法(w
阅读全文
Java基础之有返回值的线程
摘要:可返回值的任务必须实现Callable接口,类似的,无返回值的任务必须Runnable接口。执行Callable任务后,可以获取一个Future的对象,在该对象上调用get就可以获取到Callable任务返回的Object了
阅读全文
Java基础之线程池
摘要:线程池的基本思想还是一种对象池的思想,开辟一块内存空间,里面存放了众多(未死亡)的线程,池中线程执行调度由池管理器来处理。当有线程任务时,从池中取一个,执行完成后线程对象归池,这样可以避免反复创建线程对象所带来的性能开销,节省了系统的资源,在使用线程池之前,必须知道如何去创建一个线程池,在Java中
阅读全文
Java基础之线程并发协作(生产消费者模式)
摘要:实际上,准确说应该是“生产者-消费者-仓储”模型,离开了仓储,生产者消费者模型就显得没有说服力了。对于此模型,应该明确一下几点:1、生产者仅仅在仓储未满时候生产,仓满则停止生产;2、消费者仅仅在仓储有产品时候才能消费,仓空则等待;3、当消费者发现仓储没产品可消费时候会通知生产者生产;4、生产者在生产
阅读全文
Java基础之线程的交互
摘要:void notify() 唤醒在此对象监视器上等待的单个线程 void notifyAll() 唤醒在此对象监视器上等待的所有线程 void wait() 导致当前的线程等待,直到其他线程调用此对象的 notify()方法或 notifyAll()方法 关于等待/通知,要记住的关键点是:必须从同步
阅读全文
Java基础之线程synchronized关键字
摘要:synchronized 关键字,它包括两种用法:synchronized 方法和 synchronized 块 1. synchronized 方法:通过在方法声明中加入 synchronized关键字来声明 synchronized 方法。如: public synchronized void
阅读全文
Java基础之线程同步和锁
摘要:从结果发现,这样的输出值明显是不合理的,且结果是变动的,原因是两个线程不加控制的访问Foo对象并修改其数据所致;如果要保持结果的合理性,只需要达到一个目的,就是将对Foo的访问加以限制,每次只能有一个线程在访问 Java中一个对象只有一个锁。所以,如果一个线程获得该锁,就没有其他线程可以获得锁,直到
阅读全文
Java中使线程离开运行状态的几种方式?
摘要:1、线程的run()方法完成 2、在对象上调用wait()方法(不是在线程上调用) 3、线程不能在对象上获得锁定,它正试图运行该对象的方法代码 4、线程调度程序可以决定将当前运行状态移动到可运行状态,以便让另一个线程获得运行机会,而不需要任何理由 5、线程的sleep()方法 6、线程的join()
阅读全文
Java基础之线程阻塞
摘要:线程总是存在优先级,优先级范围在1~10之间,线程默认优先级是5; JVM线程调度程序是基于优先级的抢先调度机制; 在大多数情况下,当前运行的线程优先级将大于或等于线程池中任何线程的优先级 注意:当设计多线程应用程序的时候,一定不要依赖于线程的优先级。因为线程调度优先级操作是没有保障的,只能把线程优
阅读全文
Java基础之线程的两种实现方式
摘要:进程是指一个内存中运行的应用程序,每个进程都有自己独立的一块内存空间,一个进程中可以启动多个线程!线程总是属于某个线程,进程中的线程共享进程的内存 注意:对Java来说,run()方法没有任何特别之处。像main()方法一样,它只是新线程知道调用的方法名称(和签名)。因此,在Runnable上或者T
阅读全文