三、数组初始化

今天在图书馆借了《疯狂JAVA程序员的基本修养》
书的前言说得很好

  Java语言拥有的开发人群越来越大了,大量程序员已经进入或正打算进入Java编程领域。这当然和Java语言本身的优秀不无关系,却也和Java编程入门简单有关。一个毫无编程基础的初学者,只要有点数据库和SQL基础,大概花不到一个月时间就可以学会编写JSP页面,说不定就可以找到一份Java编程的工作了。如果他肯再多下点功夫,学习一下编写Struts Action类、配置Action,编写Spring Bean类、配置Bean,他甚至可能自我感觉很不错了。
  问题是:这种“快餐式”的程序员、“突击式”的程序员真的满足要求吗?如果仅仅满足于这些简单的、重复式开发,他们也许没有太多的问题,但他们可能很少有突破的机会。究其根本原因,很大程度上是因为他们的基本修养不够扎实。对他们而言,与其说Java是一种面向对象的语言,不如说更像一种脚本;他们从源代码层次来看程序运行(甚至只会从Eclipse等集成开发环境中看程序运行),完全无法从底层内存分配的角度来看程序运行;他们天天在用Java类库、用Struts、用Spring,但对这些东西的实现知之甚少–这又如何突破自己、获得更好的提高呢?
  鉴于此种现状,“疯狂软件教育中心”训练过程中除了采用大量的实际项目来驱动教学之外,往往会花时间、精力来培养学员的基本修养。比如讲授Spring框架,如果只关注编写Bean类、配置Bean,一天就足够了。而笔者往往会深入Spring框架的底层实现,带领学生从工厂模式、策略模式、门面模式、代理模式、命令模式的角度来深度分析Spring框架实现,然后进行对比,总结Spring框架的优势到底在哪里?不使用Spring框架是否有替换解决方案?进而感受设计模式对实际开发的帮助。
  上面这些内容,看似“高深”,但其实质依然离不开Java编程的基本功。完全可以这样说:一旦读者真正把基本功打扎实了,将可以看得更高、更透彻。
  在这样的背景下,笔者想将自己多年的一些经验、总结通过本书与大家分享,希望把自己多年积累的经验、心得表达出来;把自己走过的弯路“标”出来,让后来者尽量少走弯路。
  本书内容
  本书第一部分主要介绍Java内存管理相关方面的知识,内存管理既是Java程序员容易忽视的地方,又是Java编程的重点。实际上,许多有一定编程经验的Java开发者,自然而然就会关心垃圾回收、内存管理、性能优化相关内容。无论学习哪种语言,如果能真正从程序运行的底层机制、内存分配细节、内存回收细节把握程序执行过程,这样才能有豁然开朗的感觉,本书第一部分正是旨在帮助大家更好地掌握Java内存管理相关知识。
  本书第三部分所介绍的常见数据结构、排序算法的Java实现,则是笔者一直想介绍的内容–也许你初涉编程时感受不到这些经典算法的用途,因为你可以直接利用别人的实现;但如果你希望突破自己,上升到另外一个高度时,你就不可避免地需要自己开发类库,而不是总使用别人的类库,那这些经典算法的作用就显现出来了。
  本书第二部分和第四部分则主要来自于参加“疯狂软件教育中心”的学生,正如每个动手编程的初学者,他们都曾经遭遇过各种各样的陷阱,笔者总是提醒他们应该将这些陷阱收集起来,以免再次陷进去。本书第二部分收集了Java编程中各种常见的陷阱;第四部分的内容则解决了他们进入实际开发之前的困扰,包括程序开发的基本方法,有效进行程序调试的方法,如何看待、使用IDE工具,软件测试等相关内容。
  本书写给谁看
  如果你想从零开始学习Java编程,本书不适合你。如果你已经学会了Java基本语法,动手编程却感到困难重重,或者你已经是一个Java程序员了,实际开发中却感觉力不从心,本书将非常适合你。本书会帮助你找出自己的技术短板,提升Java编程的基本修养。<

这些基础知识正是贺老师不厌其烦告诉我们的
的确 要创新就得了解原理
于是决定开始研究这本书了

同时 开始试着用用CSDN-markdown编辑器
看起来界面很棒


代码如下

public class ArrayTest3
{
    public static void main(String[] args)
    {
        int[] nums = new int[] { 1, 2, 3, 4, 5 };
        // 体验JAVA中不初始化数组
        // 用prices数组指向nums数组
        int[] prices;
        prices = nums;
        for (int i = 0; i < prices.length; i++)
        {
            System.out.print(prices[i] + " ");
        }
        System.out.println();
        // 体验更改prices中的值来更改nums中的值
        prices[2] = 9;
        System.out.println("nums[2]=" + nums[2]);
    }
}

运行结果

1 2 3 4 5
nums[2]=9

学习心得

要记得的是 JAVA数组是静态的 一旦初始化完成 数组元素的内存空间分配即结束

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值