- 浏览: 17870 次
- 性别:
最新评论
文章列表
前一段时间学习了工厂模式,觉得挺有用的
上网搜资料得知设计模式真心很多!大概有23种!简单的可以分为三类:
创建型模式、结构型模式、行为型模式
而工厂模式则属于创建型模式!
一 我们为什么需要使用工厂模式?
1. ...
CoolButton(1)
这段时间一直在美化界面,总觉得按钮丑了一点,输入框也难看了一点,
终于他们都被我改造了!再也不用担心我们的界面不好看了!!!
小伙伴们看进来呀!
改造这个按钮经过一个十分艰辛的过程,但终于还是被我发现了!在探索的过程
中我先学会了一种比较简单按钮(一会会在下面讲解),但是我发现他还是有一些问
题,在背景色为接近白色的界面上还能看出效果,但是其他颜色不是很明显而且还会
出现边缘的白色,这就是为什么在接近白色界面上效果会好一点的原因。在这难过的
时刻,我终于找到了解决办法,也就是稍复杂一点的异形按钮,下面一一介绍。
一 简单漂亮的按钮
...
可视化通信服务器
承接上次的内容,解决上次的遗留问题
1.我们要实现多线程(一个线程一个Socket对象,从而实现多个客户端可同时与服务器建立连接)
while(true){
try {
Socket client = ss.accept();
System.out.println("已连接");
s=new Send(client,jf);
s.start();
} catch (IOException e) {
e.printStackTrace();
}
}
2.服务器可视化
...
- 2013-07-17 01:50
- 浏览 735
- 评论(0)
简单通信服务器
在做通信的项目之前我们先了解服务器,我的理解是服务器类似于中转站,接受一个/多个客户端 的消息再转发给其他客户端,更形象的来说他像一个管道,连接着客户端! 因此,在实现通信前我们必 ...
- 2013-07-17 01:44
- 浏览 654
- 评论(0)
保存自画图形(bmp图像)
分析:
首先:要做一个画板出来,实现画各种图形(这个就很简单,不多说了)
其次:怎样将这个图片保存起来,保存的目的就是再一次打开,这就要求我们在保存
的时候要有一定的规则!bmp的规则我们已经很熟悉了!接下来就看一下具体操作吧!
此次我们使用的是BufferedImage得到画布,利用BufferedImage的一些方法截取
指定大小的图片、取得图片上的图片信息,并将其写入指定路径的文件中。
java.awt.Robot ro=new java.awt.Robot();
/*
* myCanvas.getLocation().x,myCanva ...
- 2013-07-02 00:07
- 浏览 554
- 评论(0)
解析bmp图像
今天做了一个很好玩的东西————bmp图片解析器。刚看到的时候我觉得超难,完全不
懂,做出来之后,觉得其实很简单!接下来就让我来介绍一下吧!
在真正做解析器之前我们应该先了解一些基础知识!
位运算:
1.由byte型转为int型(下面是4个byte转为一个byte)
(((int)b4&0xff)<<24
|(((int)b3&0xff)<<16)
|(((int)b2&0xff)<<8)
|(((int)b1&0xff)<<0));
...
- 2013-07-01 23:51
- 浏览 818
- 评论(0)
分形——毕达哥拉斯树
1.思路:
首先,画一个正方形(相当于树干,是最下面的一个正方形;
其次,以上一个正方形最上面的边(顶边)为直角三角形的斜边;
以该边的左边一点 ...
- 2013-06-24 22:21
- 浏览 783
- 评论(0)
数组
一 什么是数组
1.数组是JAVA中最基本的数据结构,可以理解为一个容器。
2.数组使用前需要定义,一旦定义长度就固定了。
3.数组是有序的,数组中每一个元素都有唯一一个索引位置,索引值从0开始到数组长度-1, 超过最大值就会报错
4.可以通过 数组名.length取得数组的长度
5.可以通过 数组名[索引值]取得数组某一位置的值或内容
二 数组的定义(有3种)
1.定义是指定数组的长度,这样会使用内存空间创建数组对象,但数组中的每个位置的元素会是默认值(原始类型:0;引用类型:null)如:
int a = new int[10]; ...
- 2013-06-24 22:15
- 浏览 843
- 评论(0)
高级swing组之菜单应用
1 菜单的基本概念
Menu包括两种:基于菜单条的:一般加在JFrame上
JPopupMenu:弹出式菜单
javax.swing.JMenuBar类:放置菜单的菜单条
javax.swing.JMenu:菜单目录对象
javax.swing.JMenuItem:菜单条目
关系:JMenuItem,JMenu都可以是JMenu的子项
(JMenuItem必须放在JMenu上)
JMenu必须放在JMenuBar上
2 基于菜单条
说明:已 ...
- 2013-06-02 23:52
- 浏览 904
- 评论(0)
哈弗曼树
1 建立哈夫曼树的节点类
其中包括有节点数据和左右子树;
package com0423哈弗曼树;
/**
* 建立哈弗曼树的节点
* @author 孙瑞鸿
*/
public class HFMNode {
public int data;
public HFMNode right;
public HFMNode left;
}
2 建立哈夫 ...
- 2013-04-23 23:32
- 浏览 664
- 评论(0)
一 泛型
1.为什么使用泛型:
要用一个类型接收多个类时如:
int x=2,y=3;
float x=3.0,y=5.6;
String x="aa",y="bb";
可以使用Object接受任何类型的数据(发生向上转型),但由于Object可接受任何数据类型,
当接受的和输出的类型不符时就会出错,因此使用泛型。
2.访问权限 class 类名<泛型标识符...>{ //泛型标识符可任意定义,可为多个
访问权限 泛型标识符 变量名称;
访 ...
- 2013-04-20 00:35
- 浏览 772
- 评论(0)
数组实现链表
1 建立一个节点类LinkNode
package com0415数组变为链表;
//定义一个链表节点类
public class LinkNode {
//节点中存的数据
public Object data;
//指向下一个节点
public Object next;
}
2 建立一个链表类LinkList
添加toLink,printLinkList方法
/**
* 将数组变为链表存储形式
* @param s:需要转化为链表的数组
* @return ln:单项链表的头节点
*/
public L ...
- 2013-04-19 00:28
- 浏览 2481
- 评论(0)
用链表实现队列
1 建立链表节点类
public LinkNode{
public Object obj;
public LinkNode child;
public LinkNode parent;
} 添加get,set方法即可
2 建立链表类
实现添加节点,删除节点,更新节点,输出链表长度,输出链表等方法
实例化链表类,将以上方法添加到链表
使用双向链表,设置头节点front和尾节点last
添加方法:
/**
* 插入新节点
* @param obj:要插入的新节点
*/
public void add(Object ...
- 2013-04-17 22:45
- 浏览 920
- 评论(0)
窗体类
package com032802;
import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.Graphics;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JColorChooser;
import javax.swing.JFrame;
import javax.swing.JSlide ...
- 2013-03-29 23:46
- 浏览 896
- 评论(0)
package com032603;
import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.Graphics;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JColorChooser;
import javax.swing.JFrame;
import com032603.DrawBorder; ...
- 2013-03-27 01:06
- 浏览 693
- 评论(0)