一道java题所揭示的原理
看到一道java题,感觉很不错,我在原来的版本上增加了些代码,一起来看看下面的代码将输出什么
class Father{
int i,j;
Father(){
add(1);
}
void add(int v){
i+=v;
j+=v;
}
void print(){
System.out.println("i:="+i);
System.out.println("j:="+j);
}
}
class Child extends Father{
int i;
Child(){
add(2);
}
void add(int v){
i+=2*v;
j+=2*v;
}
void _print(){
System.out.println("ci:="+i);
}
}
public class Test {
public static void main(String[] args) {
Child c =new Child();
c.add(8);
c.print();
c._print();
}
}
输出结果:
i=0;
j=22;
ci=22;
分析一下:这是一个继承结构,child继承了Father的 j 和 print ()。
抓住两个重点
:
1,在类被编译时作了些什么呢
Father Child
------- --------
┌──> j <──── @ i
│ ------- --------
│──> j <──── @ j <─┐
│ ------- -------- │
│ add() add() ─┤
│ ------- ------- │
└──print() <─ @ print() │
------- ------- │
┌── _print() │
│ -------- &
相关文档:
2009年10月31日 星期六 15:32
package Client;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.Socket;
import java.net.SocketException;
import java.net.SocketTimeoutException;
import java.net.UnknownHostException;
import java.nio.channels.Il ......
关键字: json java
JSON-lib这个Java类包用于把bean,map和XML转换成JSON并能够把JSON转回成bean和DynaBean。
下载地址:http://json-lib.sourceforge.net/
还要需要的第3方包:
org.apache.commons(3.2以上版本)
org.apache.oro
net.sf.ezmorph(ezmorph-1.0.4.jar)
nu.xom
1、List
Java代码
boolean[] bool ......
安装开发环境
ubuntu9.10下安装JAVA开发环境其实还是比较简单的,我们就以安装常用的jdk、eclipse、tomcat、svn client(找到一个可以和windows中的小乌龟类似的但安装还有点问题解决后会补上)、oracle client为例讲讲如何安装(本文中自动化安装脚本下载http://download.csdn.net/source/2034239,文件太大分成6份 )。前 ......
很久没上来了,发现虽然资料和书看的很多,但是很久没碰的东西还是很容易淡忘。以后希望能多记录吧。
今天玩了把线程池,并对其中的参数做了一些调整,并记录在多并发情况下线程数对各种情况的反应。程序是网上找的,并作了稍微修改。
java的线程池实现,ThreadPool
package net.zj.hz.yk.thr ......
学到JAVA的面对对象,发现如此强大!
万物皆对象,万物为我所用!
对JAVA产生强烈的好感!
但对于Sun公司的收购,JAVA不知会如何?
--------------------------------------------------
这第一篇文章,是我在CSDN的开端。
之后我会更新我的博客,写上一些学习感受。
希望能在这里找到一片新的天地! ......