(1).String

//    基本数据类型->值传递(传递值)
//    引用数据类型->引用传递(传递地址)
//    特殊的引用传递String:因为是定长字符串,所以结果同值传递

public class TestString {
    static void change(String a, StringBuffer b) {
        a = "改变定长";
        //b.append("改变变长");
        b.replace(0, b.length(), "改变变长");
        System.out.println(a);
        System.out.println(b);
    }

    public static void main(String[] args) {
        String a = new String("定长");
        StringBuffer b = new StringBuffer("变长");
        System.out.println(a);
        System.out.println(b);

        change(a, b);
        System.out.println(a);
        System.out.println(b);

/*
运行结果
定长
变长

改变定长
改变变长

定长
改变变长
 */
    }
}


 

(2).交换对象
public class valuePKreference {

    int a, b;

    static void change(valuePKreference v1, valuePKreference v2) {
        v1.a++;
        v2.a++;
        valuePKreference v3;
        v3 = v1;
        v1 = v2;
        v2 = v3;

        System.out.println("chang里面");
        System.out.println("v1.a=" + v1.a);
        System.out.println("v1.b=" + v1.b);
        System.out.println("v2.a=" + v2.a);
        System.out.println("v2.b=" + v2.b);
        System.out.println("v3.a=" + v3.a);
        System.out.println("v3.b=" + v3.b);
    }

    public static void main(String[] args) {
        valuePKreference v1 = new valuePKreference();
        v1.a = 1;
        v1.b = 1;
        valuePKreference v2 = new valuePKreference();
        v2.a = 10;
        v2.b = 10;
        System.out.println("chang之前");
        System.out.println("v1.a=" + v1.a);
        System.out.println("v1.b=" + v1.b);
        System.out.println("v2.a=" + v2.a);
        System.out.println("v2.b=" + v2.b);
        change(v1, v2);
        System.out.println("chang之后");
        System.out.println("v1.a=" + v1.a);
        System.out.println("v1.b=" + v1.b);
        System.out.println("v2.a=" + v2.a);
        System.out.println("v2.b=" + v2.b);
    }
}
/*
 chang之前
v1.a=1
v1.b=1
v2.a=10
v2.b=10
chang里面
v1.a=11
v1.b=10
v2.a=2
v2.b=1
v3.a=2
v3.b=1
chang之后
v1.a=2
v1.b=1
v2.a=11
v2.b=10
 */

说明:

1.引用传递,所以change后a会增加

2.交换时交换的是新建的v1,,v2,v3所以能看见值的变化,但是源数据没有变化,即只交换了新建对象的指针指向,没有交换指向的数据


import java.awt.Color;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;

public class swing {

    public static void main(String[] args) {

        JFrame frame = new JFrame("这里是标题");
        frame.setTitle("设置标题");
        //窗体初始位置 距左 距上 宽 高
        frame.setBounds(100, 200, 900, 600);
        //显示窗体
        frame.setVisible(true);

        //创建桌布,颜色
        JPanel zhuobu = new JPanel();
        //设置背景颜色
        zhuobu.setBackground(Color.orange);
        //关闭布局管理器(标签自动居中放置),自己决定位置
        zhuobu.setLayout(null);
        //把桌布放到桌子上
        frame.setContentPane(zhuobu);

        //插入图片对象
        ImageIcon img=new ImageIcon("d:/p2.jpg");

        //创建标签对象
        JLabel picJLabel=new JLabel(img);
        //把图片放到标签上(同构造方法)
        //picJLabel.setIcon(img);
        //标签位置 距窗体左 距上 宽 高
        picJLabel.setBounds(100, 50, img.getIconWidth(),img.getIconHeight() );
        //标签增加到桌布上
        zhuobu.add(picJLabel);

        //放置多个图片
        ImageIcon img1=new ImageIcon("d:/p1.jpg");
        JLabel[] pic=new JLabel[10];
        for (int i = 0; i < pic.length; i++) {
            pic[i]=new JLabel(img1);
            pic[i].setBounds(i*img1.getIconWidth(), 0, img1.getIconWidth(), img1.getIconHeight());
            zhuobu.add(pic[i]);
        }

    }
}
//f3 查看源文件
//ctrl+1 查看错误提示
//ctrl+shift+o 解决所有错误
//ctrl+o 显示文件成员(函数,变量……)
//ctrl+t 分层结构

 

ps:verycd旺旺老师


[00:00]老师介绍,机构介绍,可以不听
[13:47]真是开始课程介绍
[15:30]JAVA SE
[26:40]强化英文
[28:35]版本管理
[30:00]单元测试
[31:12]UML
[31:32]数据库
[32:55]java web开发
[40:40]java web框架 struts hibernate spring
[45:38]项目构建与日志
[46:00]代码自动生成框架CAGF
[48:27]工作流 jbpm
[50:48]web service (apache cxf,restlet)
[52:58]osgi
[55:00]flex
[58:03]jpa ejb
[58:15]笔试面试题目剖析
[59:45]android
[1:02:50]总结

JAVA里面东西很多很多,之前我一直很不了解,看了这个之后清晰多了,上个学期再学校学了java程序设计,太浅了,下个学期有java课程设计和java ee,这个比较深入,我要认真学!

《编程方法》是斯坦福大学开放课程中的一门课,感谢YYeTs提供翻译,国外老师的授课比国内好了无数倍,强烈推荐。

以下视频来自优酷:http://v.youku.com/v_show/id_XMjE4NzQ0NDI0.html

以下是我的笔记:

[05:00] 前五分钟是开场白,可以跳过

[06:03] 这门课被称为《编程方法》的原因是,它并不局限于某一门特定的编程语言,而是着重于软件开发的思想。思想或者说是思路才是最重要的。

[07:42] 这门课会主要使用Java进行讲解。

[11:00] 这门课(CS106A)会很轻松。CS105更轻松。CS106X是CS106A的快速版,进度很快。CS106B是CS106A的后续。

[15:52] 本课程的网址是http://www.stanford.edu/class/cs106a或者http://cs106a.stanford.edu

[21:10] 本课程一共有7次编程作业,复杂度依次增加。

[27:00] 讲了一大段评分标准,对我们来说没什么用。

[34:00] 上课还有糖吃……

[35:48] 不要共享代码 / 注明出处

[42:00] “Debug”这个名词的来例。

[45:45] 课程将使用Karel the Robot来讲解一些入门的编程知识。

第一课并没有讲多少和编程有关的东西,不过老师蛮风趣的,值得一看。

上文转自:http://leonax.net/


我突然发现看公开课程并记笔记是一个很好的学习方法,

希望,

下个学期,

每个星期至少看一集并记笔记吧!


课程网址:http://www.stanford.edu/class/cs106a/

这一节课的讲义下载地址:http://www.stanford.edu/class/cs106a/handouts/01-general-information.pdf

坚持,

加油!


ps:首先感谢百度的自动保存草稿功能,让这篇写了一半的文章得以重见天日,年前连续在百度和博客园丢失了几篇文章,还好找回一篇。

正文:

刚才和星姐的一通交流突然让我惊了一下。

我到底喜欢什么?

 

这两天,我一直在学习php,一边学习,一边做学校的poj实时排名,现在已经有了初步模样,星姐说:“看你现在的热情,选专业应该选网络工程的,而不是软件工程”。

我愣了一下,我真的那么有激情吗?

去年寒假,也是这个时候,我还在学习CCNA,一开始也很有激情,借了很多书,并在培训机构认真听课。可是,寒假结束,我的CCNA之旅就画上了句号,书几乎再也没有翻开过,电脑里的Cisco Packet Tracer也再也没有启动过。。。

再往前,我曾经疯狂的迷过摄影,可是,短暂激情过后,只留下电脑里近50G的数码照片,大概八千张吧,现在,不仅好久不拍照了,放寒假居然把照相机丢在宿舍了。

回忆再往前,我的脑海里又浮现出好多做过的“傻”事情,做事的时候很执着,现在看来,真是浮云。

小学低年级,喜欢绘画,儿童画、中国画、素描一路学下来,作品最远曾被送至名古屋市展出,可是,昨天,小侄女的白板前,我连一只小猴子都画不出来;

小学高年级,热衷奥数,不是妈逼的,但是的确喜欢,也因此结识了不少好友,后来,最好的成绩是县里第一(叔叔曾经拿过县里数学竞赛第二,后来高考选了文科,现在摇身一变公务员了,衣食无忧)当然,数学竞赛对我最大的帮助是意外获得冬令营一等奖而可以离开县城,去市的好学校学习。

初中,我的数学居然不行了,初一是初赛出色决赛失手,到了初二,竟然连小奖也拿不到了,数学竞赛之路就此到了尽头。

初三时误打误撞,参加物理竞赛,意外拿到省二(班级前30名有机会参赛,我排32,其他班报名未满,我就替补了,考得也不怎么好,不知道最后卷子怎么改的),后来到物理就不行了,大学物理上下都是60+的低空成绩。。。

高中三年基本在浪费时间中度过,再次也就不提了。。。写到这里已经偏题很远了

 

重新回来,写个总结:

1)不同时代,我取得过一些暂时性的成绩(这里面甚至可以包括足球,游戏方面),但是,我会突然停止,然后,甚至退化得非常严重。

2)“瘦死的骆驼比马大”这一句话在我身上完全不适用,我堕落的速度和程度都是惊人的。

3)“我到底喜欢什么”,这个最初的标题,我思考不出一个持久的答案。暂时的答案是:???