JAVA - 技术教程文章

《JAVA程序设计》实训第一天——《猜猜看》游戏【图】

课程实训是做一个猜猜看的小游戏。对于对代码不熟悉不了解的我来说的确挺难的。但是我还是会努力的。import java.awt.EventQueue; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.border.EmptyBorder; import javax.swing.JButton; import javax.swing.JTextField; import javax.swing.JLabel; import java.awt.Color; import java.awt.SystemColor; import java.awt.event.ActionListener; import ja...

JAVA代码效率优化【代码】

JAVA代码效率优化 1、 尽量指定类的final修饰符 带有final修饰符的类是不可派生的。    如果指定一个类为final,则该类所有的方法都是final。Java编译器会寻找机会内联(inline)所有的 final方法(这和具体的编译器实现有关)。此举能够使性能平均提高50% 。 2、 尽量重用对象。   特别是String 对象的使用中,出现字符串连接情况时应用StringBuffer 代替。由于系统不仅要花时间生成对象,以后可能还需花时间对...

JAVA语法基础课堂例子验证【图】

一 枚举类型源代码:public class EnumTest {   public static void main(String[] args) {     Size s=Size.SMALL;     Size t=Size.LARGE;     //s和t引用同一个对象?     System.out.println(s==t); //     //是原始数据类型吗?      System.out.println(s.getClass().isPrimitive());      //从字符串中转换     Size u=Size.valueOf("SMALL");     System.out.println(s==u)...

JavaEE Tutorials (10) - Java持久化查询语言

10.1查询语言术语14010.2使用Java持久化查询语言创建查询141  10.2.1查询中的命名参数142  10.2.2查询中的位置参数14210.3简化的查询语言语法142  10.3.1选择语句142  10.3.2更新和删除语句14310.4示例查询143  10.4.1简单查询143  10.4.2导航到相关实体的查询144  10.4.3包含其他条件表达式的查询146  10.4.4批处理更新和删除14710.5完整的查询语言语法148  10.5.1BNF符号148  10.5.2Java持久化查询语言的BNF...

JAVA设计模式之迭代子模式【代码】【图】

在阎宏博士的《JAVA与模式》一书中开头是这样描述迭代子(Iterator)模式的:  迭代子模式又叫游标(Cursor)模式,是对象的行为模式。迭代子模式可以顺序地访问一个聚集中的元素而不必暴露聚集的内部表象(internal representation)。聚集和JAVA聚集  多个对象聚在一起形成的总体称之为聚集(Aggregate),聚集对象是能够包容一组对象的容器对象。聚集依赖于聚集结构的抽象化,具有复杂化和多样性。数组就是最基本的聚集,也是其...

java工作复习——4大时间等待——显示等待【代码】【图】

注意:只有满足显式等待要求,代码才会向后执行,当显式等待条件未满足时,在设定的最大显式等待时间区间内,会停在当前代码位置进行等待,直到设定的条件被满足,才能继续执行后续的测试逻辑。如果超过设定的最大显式等待时间区间,程序会抛出异常,测试用例被认为执行失败。package jkcs;import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.firefox.FirefoxDriver; import org.o...

js页面跳转常用的几种方式_javascript技巧

第一种: 复制代码代码如下:<script language="javascript" type="text/javascript"> window.location.href="jb51.jsp?backurl="+window.location.href; </script> 第二种: 复制代码代码如下:<script language="javascript"> alert("返回"); window.history.back(-1); </script> 第三种: 复制代码代码如下:<script language="javascript"> window.navigate("jb51.jsp"); </script> 第四种: 复制代码代码如下:<script language="...

Java基础知识强化之集合框架笔记53:Map集合之Map集合的遍历 键值对对象找键和值【代码】【图】

1. Map集合的遍历(键值对对象找键和值)Map -- 夫妻对 思路: A: 获取所有结婚证的集合 B: 遍历结婚证的集合,得到每一个结婚证 C: 根据结婚证获取丈夫和妻子转换: A: 获取所有键值对对象的集合 B: 遍历键值对对象的集合,得到每一个键值对对象 C: 根据键值对对象获取键和值 2. 代码示例: 1package cn.itcast_01;2 3import java.util.HashMap;4import java.util.Map;5import java.util.Set;6 7/* 8 * 看看我们开始的一个方...

解决mysql java.sql.SQLException: The server time zone value‘XXXXXX' is unrecognized or represents...【代码】【图】

解决 java.sql.SQLException: The server time zone value ‘XXXXXX’ is unrecognized or represents more than one time zone.###1.报错截图2.解决方法使用的数据库是MySQL,驱动是6.0.3,这是由于数据库和系统时区差异所造成的,在jdbc连接的url后面加上serverTimezone=UTC即可解决问题,如果需要使用gmt+8时区,需要写成GMT%2B8,否则会被解析为空。再一个解决办法就是使用低版本的MySQL jdbc驱动,5.1.28不会存在时区的问题。...

用Java 8 Lambda表达式实现设计模式:命令模式【代码】【图】

链接:http://www.importnew.com/16789.html 在这篇博客里,我将说明如何在使用Java 8 Lambda表达式的函数式编程方式时实现命令设计模式。命令模式的目标是将请求封装成一个对象,从对客户端的不同类型请求,例如队列或日志请求参数化,并提供相应的操作。命令模式是一种通用编程方式,该方式基于运行时决策顺序来执行方法。模式的参与者如下: 命令 :声明用于执行操作的接口。实体命令 :定义接收者对象和动作的绑定。客户端 :创...

JAVA多线程(七)模式-Producer Consumer【代码】

Producer Consumer生产者创建数据,通过中介控制流量并安全传递给消费者。适用环境生产者生产数据的速度与消费者处理数据的速度不一致,中介者通过缓存和阻塞对消费者的数据压力进行调整。样例4生产者生产产品,放入市场,2消费者消费。产品package ProducerConsumer;public class Product {private String prdId=null;public Product(String prdId) {this.prdId=prdId;}public String getOrderId(){return this.prdId;} }市场pack...

Javascript 字典应用实例【代码】

字典时一个很有用的工具,在之前C#项目中有经常使用,这篇博文主要讲解在Javascript中,字典的实际应用场景首先在JS中,是没有Dictionary‘类的,我们需要实现键值(KEY) -- 数值(VALUE)的对应关系,最好的办法就是用数组首先交代下背景,我需要根据数组里的站点编号,获取到对应的站点名称首先通过Thrift接口,获取到数据库里面的设备信息,通过Ajax传输到js页面,遍历数组PS : 数据结构如下:# 设备信息 struct Device{int i...

java-Socket

1.java.net.Socket;套接字、封装了TCP通讯协议,使用它可以基于TCP与远端计算机上的服务端应用程序链接并进行通讯。 实例化Socket就是与服务器端建立连接的过程。这里需要传入两个参数来指定服务端地址信息: 参数1:服务器端计算机地址 参数2:运行在服务器计算机上的服务端应用程序打开的服务端口 通过IP可以找到服务端计算机,在通过端口可以连接到运行在服务端极端及上的服务端应用程序。由于实例化就是连接过程,若服务...

Java 位运算符 深入理解

在Java中存在着这样一类操作符,是针对二进制进行操作的,它们分别是&、|、^、~、>>、<<、>>>几个位操作符,无论是初始值是按照何种进制,都会换算成二进制进行位操作。接下来对这几种操作符进行一下简单的讲解。&:作用是对运算符两侧以二进制表达的操作符按位分别进行‘与‘运算,而这一运算是以数中相同的位(bit)为单位的。操作的规则是:仅当两个操作数都为1时,输出结果才为1,否则为0,示例如下: 12 的二进制为 11005 ...

四、JAVA异常处理

1、异常:运行期出现的错误。(观察错误的名字和行号最重要) 2、程序是调试出来的,一个一个改正错误。 3、 4、 5、 6、 7、 8、原文:http://blog.csdn.net/a2224998/article/details/44899867

浅谈JavaScript闭包【代码】

仍记得刚来到公司的时候,老大跟我们说起原型链、闭包、MV*之类的东西,当时真的是一脸懵逼的样子啊哈哈  在公司做前端开发也差不多四个月了,每一天感觉都是很忙碌,都是忙着写业务代码或者自己在学习新东西,总感觉很多知识点在这样的状态下,匆匆忙忙就略过了,自己并没有真正理解掌握下来,还是要趁有时间还是把那些东西捡回来  先看一段JS代码:function a(){var num = 0;function b(){num++;console.log(num);}return b;}...

java中的对象的序列化,以及新的try...catch块学习

对象的序列化和反序列化:1、对象的序列需要实现java.util.Serializable或者是java.io.Externalizable接口。2、Serializable只是一个接口,代表着可序列化,并没有定义任何的抽象方法,只能序列化非静态的,以及没有使用transient关键字修饰的属性,使用此接口最好声明一 个“private static final long serialVersionUID = 1L;”常量,确保在类的修改等操作之后,也能够反序列化3、其中Externalizable接口继承Serializab...

JAVA对象的初始化过程

出处:http://blog.csdn.net/andrew323/article/details/4665379 下面我们通过两个例题来说明对象的实例化过程。 例1: 编译并运行该程序会有以下输出Static Block Employee Company:china soft Non-Static Block Employee phone:0755-51595599 Employee(String) Empoloyee()下面我们来对结果做分析: 1 在代码34行实例化对象时, 先对给静态变量分配内存空间并初始化,然后执行静态块。 因此,在这里会输出:Static Block Empl...

java并发控制:ReentrantLock Condition使用详解【代码】

我们通过一个实际的例子来解释Condition的用法:我们要打印1到9这9个数字,由A线程先打印1,2,3,然后由B线程打印4,5,6,然后再由A线程打印7,8,9. 这道题有很多种解法,现在我们使用Condition来做这道题(使用Object的wait,notify方法的解法在这里)。 package cn.xband.locks;import java.util.concurrent.locks.Condition; import java.util.concurrent.locks.Lock; import java.util.concurrent.locks.ReentrantLock;public...

JAVA异常体系

1.异常体系----|Throwable 所有错误或异常的父类--------|Error(错误)--------|Exception(异常)一般能通过代码处理------------|运行时异常:方法上可以不声明,调用者可以不处理------------|编译时异常:方法上必须要声明,调用者必须要处理2.为何有差异  运行时异常都是可以通过程序员良好的编程习惯避免的,所以java编译器没有做严格要求。例如:ArithmeticException、NullPointerException、ClassCastException。  而...

Java基础面试题集(二)

Java程序员面试题集(1-50)一、Java基础部分1、面向对象的特征有哪些方面?答:面向对象的特征主要有以下几个方面:1)抽象:抽象是将一类对象的共同特征总结出来构造类的过程,包括数据抽象和行为抽象两方面。抽象只关注对象有哪些属性和行为,并不关注这些行为的细节是什么。2)继承:继承是从已有类得到继承信息创建新类的过程。提供继承信息的类被称为父类(超类、基类);得到继承信息的类被称为子类(派生类)。3)封装:通常认...

初学Java随记——要点简记

一、Windows环境变量环境变量设置:1.我的电脑——右击属性——高级系统变量——环境变量 2.系统变量下,新建 变量名:JAVA_HOME 变量值:存放盘(例D)D:\Java\jdk1.7.0_60_x64 确定后再次新建 变量名:CLASSPATH 变量值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOM...

50道经典的JAVA编程题(目录)

50道经典的JAVA编程题(目录) 题目来源于:http://blog.sina.com.cn/s/blog_60fafdda0100wb21.html【程序1】 TestRabbit.java题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? 1.程序分析: 兔子的规律为数列1,1,2,3,5,8,13,21....【程序2】 FindPrimeNumber.java题目:判断101-200之间有多少个素数,并输出所有素数。...

《JavaScript语言入门教程》记录整理:入门和数据类型【代码】

目录入门篇js介绍历史基本语法数据类型概述null 和 undefined数值字符串对象函数数组本系列基于阮一峰老师的《JavaScrip语言入门教程》或《JavaScript教程》记录整理,教程采用知识共享 署名-相同方式共享 3.0协议。这几乎是学习js最好的教程之一(去掉之一都不过分)最好的教程而阮一峰老师又采用开源方式共享出来,之所以重新记录一遍,一是强迫自己重新认真读一遍学一遍;二是对其中知识点有个自己的记录,加深自己的理解;三是感...

深入理解Java中的不可变对象【代码】【图】

深入理解Java中的不可变对象  不可变对象想必大部分朋友都不陌生,大家在平时写代码的过程中100%会使用到不可变对象,比如最常见的String对象、包装器对象等,那么到底为何Java语言要这么设计,真正意图和考虑点是什么?可能一些朋友没有细想过这些问题,今天我们就来聊聊跟不可变对象有关的话题。   以下是本文目录大纲:  一.什么是不可变对象  二.深入理解不可变性  三.如何创建不可变对象  四.不可变对象真的"完全...

java反射(Field的应用)【代码】

//$Id: DirectPropertyAccessor.java 11405 2007-04-15 12:50:34Z max.andersen@jboss.com $package org.hibernate.property;import java.lang.reflect.Field; import java.lang.reflect.Method; import java.util.Map;import org.hibernate.HibernateException; import org.hibernate.PropertyAccessException; import org.hibernate.PropertyNotFoundException; import org.hibernate.engine.SessionFactoryImplementor; import ...

通过JavaScript原型链理解基于原型的编程【代码】

零.此文动机  用了一段时间的Lua,用惯了Java C++等有Class关键字的语言,一直对Lua的中的面向对象技术感到费解,一个开源的objectlua更是看了n遍也没理解其中的原理,直到看到了Prototype-based programming一.什么是基于原型的编程基于原型的编程是面向对象编程的一种形式,通过复制已经存在的原型对象来实现面向对象,无与基于类的编程较大的区别是没有Class关键字,但是有类的概念。基于原型的编程也可以理解成基于实例的编程...

java List<对象> 转 Set、Map(高级)【代码】

package com.demo.entity;publicclass Book {privateint id;private String name;public Book() {}public Book(int id, String name) {this.id = id;this.name = name;}publicint getId() {return id;}publicvoid setId(int id) {this.id = id;}public String getName() {return name;}publicvoid setName(String name) {this.name = name;}@Overridepublic String toString() {return "Book{" +"id=" + id +", name=‘" + name + ...

javascript模拟重力感应弹跳,做个不一样的登陆端口【代码】【图】

知识点:原生js动画效果 ,重力系统,弹跳算法, 迭代与递归, 动画序列, , 两种定时器配合使用, 循环判断注意事项 ,编程思想与解决方案思维。html代码: <div ><div><img src="images/1.jpg" width="100%" height="100%" alt="背景图"/></div><div><img src="images/2.jpg" width="100%" height="100%" alt="背景图"/></div><div><img src="images/3.jpg" width="100%" height="100%" alt="背景图"/></div> </div> <!--bg_wrap end...

Java中Split函数的用法技巧[转载]

在java.lang包中也有String.split()方法,与.net的类似,都是返回是一个字符型数组,但使用过程中还有一些小技巧。如执行:"2|33|4".split("|")出来的结果是:""2|33|4奇怪吧,不过注意看一下API说明还是知道原因的. java.lang.string.split split 方法 将一个字符串分割为子字符串,然后将结果作为字符串数组返回。 stringObj.split([separator,[limit]]) 参数 stringObj 必选项。要被分解的 String 对象或文字。该对象不会被 sp...