- 博客(22)
- 收藏
- 关注
原创 Java之双缓冲技术
双缓冲技术是为了处理对于屏幕闪烁而总结的。 那么为什么出现闪烁? 这是由于组件的重绘会调用update方法,然后由update调用paint方法,由于update的原代码如下:public void update(Graphics g) { if (isShowing()) { if (! (peer instanceof LightweightP
2016-09-23 16:31:55 1201
原创 Java之setColor()
在网上查了半天有关setColor()的疑惑,即为什么setColor()在反复运用时能设置不同的组件的颜色,看了下网上,有朋友和我有一样的疑问,但没有答案。。。查了下API文档:setColorpublic abstract void setColor(Color c)将此图形上下文的当前颜色设置为指定颜色。使用此图形上下文的所有后续图形操作均使用这个指定的颜色。参数:c - 新的呈现颜色。
2016-09-22 16:48:14 12077
原创 Java之匿名内部类
匿名内部类的创建:new 父类构造器(参数列表)|实现接口() { //匿名内部类的类体部分 } 匿名内部类也就是没有名字的内部类,正因为没有名字,所以匿名内部类只能使用一次,它通常用来简化代码编写。它的整个类短小,因此在使用它时多用在不涉及将来的拓展、不涉及重要的业务逻辑。 在使用匿名内部类的过程中,我们需要
2016-09-22 16:04:17 937
原创 Java之Iterator接口
一、所有实现了Collection接口的容器类都有一个Iterator方法用以返回一个实现了Iterator接口的对象。二、Iterator对象称作迭代器,用以方便的实现对容器内元素的遍历操作。三、Iterator接口定义了如下方法:1.hasnext();\\检查序列中是否还有元素。2.next(); \\获得序列中的下一个元素。3.remove();\\将上一次
2016-09-19 16:09:28 951
原创 Java之Chat历程
0.1版:用java.awt画了ChatClien的一个窗口。0.2版:在ChatClient的窗口内加上了俩文字框准备用来显示输入和显示文字。0.3版:给ChatClient的窗口加了WindowListener来关闭窗口。0.4版:ChatClient的窗口可以获取输入字符串并响应回车来刷新文字输入框(加入ActionListener)。0.5版:写了ChatServer,有响
2016-09-18 16:59:25 1598
原创 Java之静态方法中的内部类
静态方法中不能直接创建内部类,为什么呢?在外部调用静态方法时,可以使用"类名.方法名"的方式,也可以使用"对象名.方法名"的方式。而实例方法只有后面这种方式。也就是说,调用静态方法可以无需创建对象。 静态方法在访问本类的成员时,只允许访问静态成员(即静态成员变量和静态方法),而不允许访问实例成员变量和实例方法。在静态方法中,当尝试直接去 new一个内部类(没有先 new 该
2016-09-18 16:38:17 1677
原创 Java异常捕获之finally
在执行可能抛出异常的语句时,我们会使用 try 与 catch 来处理异常。finally必须与 try 或 try/catch 配合使用。而finally关键字使 finally 中的代码总会执行,而不管有无异常发生。即在如下代码中:try{ /* program1 */}catch(Exception e){ /* program2 */}fina
2016-09-17 16:09:18 944
转载 C语言复杂声明的本质与局限
先简单回顾一下C语言的独有的变量声明方式。自诩使用C语言多年,却一直对于C的复杂的变量声明方式头皮发麻,直到看到VCZH大神前不久的大作,才恍然大悟。惭愧,因此下面的内容颇有拾人牙慧之嫌,但为了引出后面一系列关于语言的随笔,也没办法了,本文的荣誉都归于vczh大神。就从最简单的说起。int a; //说明表达式a的值是int型,a自己本身也是int型,这不是废话吗?int
2016-09-16 10:57:43 955
原创 打印自身源代码的程序
无意当中看到了这样一个问题:任意选定一个语言写一个打印自身源代码的程序,这个程序不允许读取或者写其他文件的数据,程序必须是完全独立的。很有趣吧?我正在学习C语言,这个问题是我在查找其他资料时看到的,这激发了我的兴趣,我躺在床上想了很久,没有一点头绪,额,最后抱着认为不大可能实现的想法睡着了······回到正题,我在网上搜索了有关资料以后,知道了如何去写出这样的一个程序,原理
2016-09-16 10:56:55 4256
原创 KMP算法小结
1 模式匹配概述假设文本T = y1y2y3....yn, 模式 P = p1p2p3...pm, 传统的匹配算法把位移为0,1,...n-m时的文本依次跟P比较,每次比较最多花费O(m)的时间,算法的复杂度为O((n-m+1)*m)。2 KMP算法2.1 KMP算法概述传统模式匹配算法没有利用匹配过的信息,每次都从头开始
2016-09-16 10:55:39 1127
原创 最小生成树(普利姆算法、克鲁斯卡尔算法)(逻辑理解小结)
最小生成树概述最小生成树其实是最小权重生成树的简称。即在一给定的无向图G = (V, E) 中,(u, v) 代表连接顶点 u 与顶点 v 的边(即),而 w(u, v) 代表此边的权重,若存在 T 为 E 的子集(即)且为无循环图,使得 T的 w(T) 最小,则此 T 为 G 的最小生成树。最小生成树算法1 普利姆算法将图中各边按其权值由小到大的次序顺
2016-09-16 10:54:22 5914 1
转载 c/c++ 缓冲输入和非缓冲输入
C语言有缓冲输入和非缓冲输入两种情况,默认缓冲输入,因为有的计算机不支持非缓冲输入。缓冲输入下,通过标准输入(键盘)输入的字符会先存在输入缓冲区里,同时会回显到屏幕上。这样就可以在输入回车(将输入缓冲区清空,并发送到程序的输入队列中,供程序使用)之前,进行输入的修改。但是也支持非缓冲输入,不需要输入回车来将输入发送给程序,而是键盘的任何输入都直接发送到程序的输入队列中。简言之,缓冲输入的流
2016-09-16 10:52:17 2581
原创 JAVA之JDK环境配置(JAVAC不是内部命令或外部命令)
弄了一两个小时,终于弄好了。由于我是个JAVA新手,很多都不明白,看网上的JDK环境配置教程,讲起来挺简单的可我老是弄不出来。我想了一下,网上的教程基本都是教人在系统变量下进行配置的,既然我在系统变量下弄不出来,我尝试了一下在用户变量下创建path变量,然后就成功了。看来网上的教程有时只能起个参考作用。
2016-09-16 10:51:33 1841
原创 Java之动态绑定/多态/迟绑定
(⊙o⊙)…,最近才看到这一块,发现java面对对象编程是从方方面面去体现的。由于java所拥有的这个多态(也叫动态绑定/迟绑定)机制,使得java不再像c这种面向过程的语言一样,java拥有了较高的可拓展性。那么这个机制是什么样的呢?多态:一、是指实际代码在运行过程时(非编辑过程,即只有在运行过程才有这个机制),判断应用对象的实际类型,根据实际类型去调用相应的方法
2016-09-16 10:50:24 2478
原创 Java中的getMessage()与printStackTrace()以及throws与throw
在观看马士兵老师的Java视频时,不知道为什么,异常处理一章里的第四节视频缺少,我看了一下第五节,貌似讲的是Java中的getMessage()与printStackTrace(),看了一下相关知识,试着总结下加深印象。1.getMessage()getMessage()是用来获取异常中的异常错误消息字符串,但不返回异常错误的类型,这是用来获得错误信息的一个函数。2.pri
2016-09-16 10:49:18 5066
原创 Java中方法及值的不同层次使用
今天在学习Java的二维数组,做了这样一个小练习,用来按要求分割字符串转化为Double数组public class ArrayParser {public static void main(String[] args) {double[][] d;String s = "1,2;3,4,5;6,7,8";String[] sFirst = s.split(";");d = new do
2016-09-16 10:47:54 1904
原创 Java接口与数据回收使用
学了一个月的Java多少有些自己的感悟。特别是Java显露出的一些特性,令我感到十分的有趣。第一个是Java接口接触得越多,越来越觉得Java接口就类似之前学EDA时接触到的模块化编程语言HDL。即对于某个程序流而言,我只关心我给予的与接收到的(输入输出),而其他的程序的具体实现,是次要考虑的。我还记得HDL时定义I/O时要把所有输入输出要考虑得很清楚,所以我在接触Java时一恍惚就好像再
2016-09-16 10:47:06 1943 2
原创 Java 多线程学习笔记之synchronized
当学到马士兵老师Java教程的以下代码时,我在想为什么会是这个结果?public class TT implements Runnable { int b = 100; public synchronized void m1() throws Exception{ //Thread.sleep(2000); b = 1
2016-09-16 10:45:34 1649
原创 Java之wait()/sleep()和notify()/notifyAll()
好了,来总结下wait()/sleep()和notify()/notifyAll()。wait()/sleep():wait()属于Thread类,它的作用是让访问当前对象的线程进入等待,它必须在关键字Synchronized下使用。wait()的线程必须被notify()/notifyAll()唤醒后才能运行,且在等待期间线程会放弃对象锁,只有唤醒后再去尝试对象锁。sleep
2016-09-16 10:43:49 1677
原创 Java之数据流DataInput(Output)Stream 和 字节数组流 ByteArrayInput(Output) Stream的嵌套
学到网络编程这一章,马老师提出了一个问题:怎样使用Java传输一个long类型的数?额,能力有限,所以看了答案后解析下,加深印象。发送端(TestUDPClient)方法如下:import java.net.*;import java.io.*;public class TestUDPClient{public static void main(String ar
2016-09-16 10:41:24 3976
原创 Eclipse的简易教程
在网上找了一下Eclipse的视频教程,是北京尚学堂马士兵老师的,分享出来:链接:http://pan.baidu.com/s/1bFHsnk 密码:mzez
2016-09-16 10:38:41 1318
原创 JAVA中的反射机制
不知道怎么样去理解反射机制,所以到网上找了找比较浅显易懂的,贴上来。http://blog.csdn.net/liujiahan629629/article/details/180135232016年10月17日20:56:50更新————————————————————————————————额,今天又看了一遍反射,现在能搞明白了。所谓反射机制,就是在JAVA提供了一些类,如:java.lang...
2016-09-14 16:53:31 772
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人