java基础
文章平均质量分 56
rw-just-go-forward
这个作者很懒,什么都没留下…
展开
-
将 base64 图片编码转换成图片文件
import sun.misc.BASE64Decoder;import javax.imageio.ImageIO;import java.awt.image.BufferedImage;import java.io.ByteArrayInputStream;import java.io.File;import java.io.IOException;import java.uti...原创 2018-03-09 10:14:50 · 957 阅读 · 0 评论 -
打印99乘法表
import org.junit.Test;public class Multiple { public void printMultiple99() { int i = 1; for (; i < 10; i++) for (int j = 1; j <= i; j++) System.out.print(j + "*" + i + "=" + i * j + "原创 2014-05-06 08:56:33 · 2126 阅读 · 0 评论 -
列出某个目录下的所有Java文件
import java.io.File;import java.util.ArrayList;import java.util.Arrays;import java.util.Collections;import java.util.List;import org.junit.Test;public class ListFile { public void listJavaFil原创 2014-05-06 09:15:53 · 4824 阅读 · 0 评论 -
Java访问权限控制小结
进行访问权限控制的两个原因第一,可以控制类成员的可见性,使客户程序员只看到应该看到的内容第二,可以使类的创建者随意改变类内部的工作方式,而不必担心会对客户端程序产生重大影响四种访问权限pulic默认(包权限)protectedprivate用于域和方法public表示所有人对本成员都可以访问默认访问权限表示同一包下的类可以对本成员进行原创 2014-04-30 19:59:59 · 1425 阅读 · 1 评论 -
关于Java中final关键字的用法总结
用于数据永不改变的编译时常量,必须是基本类型,static final常量定义时必须赋值一个运行时被初始化却又不希望被改变的值空白final,确保使用前必须被初始化,但有更大的灵活性final参数,用于对象引用,对象不可改变,用于基本类型,值不可以改变用于方法防止方法的行为被改变,不可覆盖private方法默认为final的曾经使用final方法可以提高效率,现已不提倡用于原创 2014-04-30 19:43:24 · 1070 阅读 · 0 评论 -
Java容器常用及常见问题小测试
package rowsy.learn;import java.util.ArrayList;import java.util.Arrays;import java.util.Collections;import java.util.HashSet;import java.util.LinkedHashSet;import java.util.List;import原创 2013-01-21 12:14:52 · 1407 阅读 · 0 评论 -
面向对象之深入思考
一提到面向对象,多数人都能随口说出继承,封装,多态三个特点,但这几种特性具体有什么好处,有什么缺点,我想这些需要好好的捋一捋才好,形成一个系统的知识,以便达到见微知著的效果。拿java语言来说吧。继承:1、主要是为了多态的实现,借助继承可以实现向上转型,利用多态的好处2、继承是一种复用父类的方式,但不常用,一般不涉及第一个原因,采用组合的方式为好封装:1、将方法和成员变量封原创 2013-01-13 12:46:37 · 1010 阅读 · 0 评论 -
想成为Java高手的25个学习目标
本文将告诉你学习Java需要达到的25个目标,希望能够对你的学习及找工作有所帮助。对比一下自己,你已经掌握了这25条中的多少条了呢? 1.你需要精通面向对象分析与设计(OOA/OOD)、设计模式(GOF,J2EEDP)以及综合模式。你应该了解UML,尤其是 class,object,interaction以及statediagrams。 2.你需要学习Java语言的基础知识以及它的原创 2012-12-21 12:01:46 · 1253 阅读 · 0 评论 -
java正则表达式构造子列表
本文权当参考,不喜勿踩Summary of regular-expression constructs ConstructMatches CharactersxThe character x\\The backslash character\0nThe character with octal va原创 2012-12-21 09:38:27 · 1264 阅读 · 0 评论 -
Java实现字符数组全排列
import org.junit.Test;public class AllSort { public void permutation(char[] buf, int start, int end) { if (start == end) {// 当只要求对数组中一个字母进行全排列时,只要就按该数组输出即可 for (int i = 0; i <= end; i++) {原创 2014-05-06 09:36:40 · 11358 阅读 · 2 评论 -
Java根据Url下载图片
公众号,欢迎关注package com.ronniewang.downloadpicture;import java.io.DataInputStream;import java.io.File;import java.io.FileOutputStream;import java.io.IOException;import java.net.MalformedURLExce...原创 2014-04-28 22:53:58 · 42018 阅读 · 3 评论 -
synchronized用法的一个实例
public class TraditionalThreadTest { static class Outputer { public void output1(String name) { synchronized (Outputer.class) { for (int i = 0; i < name.length(); i++) { System.out.pri原创 2014-05-21 17:45:48 · 1671 阅读 · 0 评论 -
Java中处理时区的转换
最近在抓英国博彩网站的数据,他们给出的时间都是格林威治时间,我们需要转换为中国时间才能使用,这里要用到Java里的TimeZone接口。通过下面的代码即可进行转换。TimeZone timeZone = TimeZone.getTimeZone("GMT+8:00");// dateTime是格林威治时间long chineseMills = dateTime.getTime() + timeZ原创 2016-02-29 14:41:01 · 4655 阅读 · 2 评论 -
Java集合类框架
今天,花了点时间重新整理了一下Java集合类框架,本图采用OmniGraffle绘制原创 2017-03-21 09:32:02 · 923 阅读 · 0 评论 -
使用jvisualvm通过JMX的方式远程监控JVM的运行情况
使用jvisualvm通过JMX的方式远程监控JVM的运行情况,步骤如下远程服务器的配置在启动java程序时加上如下几个参数-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.man原创 2016-03-09 09:45:37 · 11790 阅读 · 0 评论 -
快速排序的一个Java实现
毕业之后远离算法好久了,突发奇想写一个快排吧,当时怎么都学不会,看看现在能不能写出来。以下是时间线计时开始 。 。 。 依然有bug 。 。 。 当当当,灵机一动 。 。 。 时间啊,等等我 。 。 。 咦,可以了憋了两个多小时才写出了,也是醉了,看来算法水平还是很菜,不过总算是写出来了,这次对快排又加深了一点理解。/** * Created by wsy on 2原创 2016-03-05 10:43:26 · 805 阅读 · 0 评论 -
《Effective Java》——异常
[TOC]只针对异常情况才使用异常异常设计的初衷就是针对程序的不正常情形所使用的,不要使用异常来控制程序的执行流程对可恢复的情况使用受检异常,对编程错误使用非受检异常Java设计了三种可以抛出的结构checked exceptionruntim exceptionerrorerror一般情况下,约定俗称有虚拟机使用,表示资源不足等错误对可恢复的情况使用受检异常,对编程错误使用非受检异常避免不原创 2015-07-26 11:18:31 · 1128 阅读 · 0 评论 -
线程间共享数据的一个例子
package com.wsy.model;import java.util.HashMap;import java.util.Map;import java.util.Random;public class ThreadScopeShareData { static int data; public static void main(String[] args) { fin原创 2014-05-22 09:41:14 · 1539 阅读 · 2 评论 -
一道线程同步面试题
package com.wsy.model;/** * 完成主线程循环10次,接着子线程循环5次,如此往复10次 * * @author wsy * */public class TraditionalThreadCommunication { static Bussiness bussiness = new Bussiness(); public static void原创 2014-05-22 09:20:41 · 1732 阅读 · 0 评论 -
一个有趣的Timer应用
import java.util.Date;import java.util.Timer;import java.util.TimerTask;public class TraditionalTimerTest { static int count; public static void main(String[] args) { class MyTimerTask exte原创 2014-05-21 16:52:37 · 1125 阅读 · 0 评论 -
java中FileReader和FileWriter类用法
Reader和Writer是所有字符流类的抽象基类,用于简化对字符串的输入输出编程,即用于读写文本数据实例:import java.io.*;public class FileReaderWriterTest { public static void main(String [] args) { try { FileWriter writer = new File原创 2012-11-21 12:41:52 · 5292 阅读 · 0 评论 -
一个简单封装的jdbc工具类
import java.sql.*;import javax.sql.*;public final class JdbcUtil { /** * @param args */ private static String url = "jdbc:mysql://localhost:3306/jdbc"; // jdbc:mysql:///jdbc 本地默认端口可以原创 2012-11-24 10:37:08 · 2643 阅读 · 2 评论 -
使用tcp传递对象
客户端代码如下:import java.net.*;import java.io.*;public class ObjectClient { public static void main(String[] args) { try { Socket s = new Socket("127.0.0.1", 8001); // 实际编程不要写死原创 2012-11-23 10:18:43 · 752 阅读 · 0 评论 -
java技术体系
Java程序员高级特性 反射、泛型、注释符、自动装箱和拆箱、枚举类、可变参数、可变返回类型、增强循环、静态导入核心编程 IO、多线程、实体类、集合类、正则表达式、XML和属性文件图形编程 AWT(Java2D/JavaSound/JMF)、Swing、SWT、JFace网络编程 Applet、Socket/TCP/UDP、NIO、RMI、CO原创 2012-11-10 21:36:58 · 2076 阅读 · 0 评论 -
java中遍历HashMap的方法
Java中,通常有两种遍历HashMap的方法,如下:import java.util.*;public class MapTest { static HashMap hashMap = new HashMap(); public static void main(String [] args) { hashMap.put("one", 1); hashMap原创 2012-11-09 21:51:32 · 10238 阅读 · 0 评论 -
java面试题汇总(七)
110、J2EE是什么? J2EE 是Sun公司提出的多层(multi-diered),分布式(distributed),基于组件(component-base)的企业级应用模型 (enterpriese application model).在这样的一个应用系统中,可按照功能划分为不同的组件,这些组件又可在不同计算机上,并且处于相应的层次(tier)中。所属层次包括客户层(clietn ti原创 2012-11-01 13:44:38 · 1343 阅读 · 1 评论 -
java面试题汇总(六)
94、排序都有哪几种方法?请列举。用JAVA实现一个快速排序。 排序的方法有:插入排序(直接插入排序、希尔排序),交换排序(冒泡排序、快速排序),选择排序(直接选择排序、堆排序),归并排序,分配排序(箱排序、基数排序)快速排序的伪代码。/ /使用快速排序方法对a[ 0 :n- 1 ]排序从a[ 0 :n- 1 ]中选择一个元素作为middle,该元素为支点把余下的元素分割原创 2012-11-01 13:38:19 · 1699 阅读 · 0 评论 -
java面试题汇总(二)
20、abstract class和interface有什么区别? 声明方法的存在而不去实现它的类被叫做抽象类(abstract class),它用于要创建一个体现某些基本行为的类,并为该类声明方法,但不能在该类中实现该类的情况。不能创建abstract 类的实例。然而可以创建一个变量,其类型是一个抽象类,并让它指向具体子类的一个实例。不能有抽象构造函数或抽象静态方法。Abstract 类的子原创 2012-10-31 16:58:36 · 870 阅读 · 0 评论 -
java面试题汇总(一)
1.抽象: 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。2.继承: 继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类继承。新类继承了原始类的特原创 2012-10-31 16:54:35 · 957 阅读 · 0 评论 -
java面试题汇总(四)
58、线程的基本概念、线程的基本状态以及状态之间的关系 线程指在程序执行过程中,能够执行程序代码的一个执行单位,每个程序至少都有一个线程,也就是程序本身。 Java中的线程有四种状态分别是:运行、就绪、挂起、结束。 59、JSP的常用指令 isErrorPage(是否能使用Exception对象),isELIgnored(是否忽略表达式) 60原创 2012-10-31 17:21:20 · 948 阅读 · 0 评论 -
java中valotile
volatile,本意是不稳定的,易挥发的,也就是说,用它修饰的变量时可变的,那么这个关键字有什么用呢?在多线程环境下,线程可以将线程间共享的变量保存在本地内存(如寄存器)中,而不是从内存中读取,这就可能会引发不一致的问题,另一个进程可能在此线程运行期间改变了变量的值,而此线程并没有看到变化。而volatile修饰的成员变量在每次被线程访问时,都强迫从共享内存中重读该成员变量的值。而且,当原创 2012-11-30 23:15:57 · 4650 阅读 · 1 评论 -
java面试题汇总(五)
72、EJB的角色和三个对象 一个完整的基于EJB的分布式计算结构由六个角色组成,这六个角色可以由不同的开发商提供,每个角色所作的工作必须遵循Sun公司提供的EJB规范,以保证彼此之间的兼容性。这六个角色分别是EJB组件开发者(Enterprise Bean Provider) 、应用组合者(Application Assembler)、部署者(Deployer)、EJB 服务器提供者(EJB原创 2012-11-21 14:37:00 · 777 阅读 · 0 评论 -
java中PipedOutputStream和PipedInputStream类用法
PipedOutputStream和PipedInputStream用于在应用程序中创建管道通信实例:import java.io.*;public class PipedStreamTest { public static void main(String [] args) { Sender sender = new Sender(); Receiver rece原创 2012-11-21 13:01:15 · 4559 阅读 · 0 评论 -
java简单的TCP服务程序
tcp服务器代码如下:import java.net.*;public class ReserveServer { public static void main(String[] args) { // 用户可自行指定端口号 try { ServerSocket ss; if (args.length < 1) { ss = new Ser原创 2012-11-23 09:35:35 · 2196 阅读 · 0 评论 -
java中UDP编程
发送者类如下:import java.net.*;public class UdpSender { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub try { DatagramSocket ds =原创 2012-11-22 15:48:33 · 915 阅读 · 0 评论 -
java中ObjectOutpuStream和ObjectInputStream类用法
import java.io.*;public class Serialization { public static void main(String [] args) { Student stu1 = new Student(1, "Ronnie", 37, "snooker"); Student stu2 = new Student(2, "John", 37, "s原创 2012-11-21 21:47:28 · 5350 阅读 · 0 评论 -
包装流类的使用
import java.io.*;public class DataStreamTest { public static void main(String [] args) { try { FileOutputStream fos = new FileOutputStream("count.txt"); BufferedOutputStream bos = new原创 2012-11-21 21:26:00 · 1071 阅读 · 0 评论 -
java中FileOutputStream和FileInputStream类用法
I/O类包括节点流类和包装流类FileOutputStream和FileInputStream创建磁盘文件的输入输出流对象创建FileInputStream实例对象时,指定的文件应当是存在和可读的,创建FileOutputStream实例对象时,如果指定的文件已经存在,这个文件中的原来内容将被清除创建FileOutputStream实例对象时,可以指定还不存在的文件名,不能指定一个已被原创 2012-11-21 12:28:56 · 25879 阅读 · 0 评论 -
java中RandomAccessFile类用法
RandomAccessFile类 只能访问文件,不能操作其他io设备 支持随机访问 在读写等长记录文件有优势实例:import java.io.*;class Employee { private String name; private int age; public static final int LEN = 8; Str原创 2012-11-20 21:50:47 · 5656 阅读 · 0 评论 -
java中File类用法
import java.io.*;import java.util.*;public class FileTest { public static void main(String [] args) { File f = new File("1.txt"); if (f.exists()) { f.delete(); } else { tr原创 2012-11-20 20:02:46 · 3233 阅读 · 0 评论