`
learnmore
  • 浏览: 602694 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

scjp

    博客分类:
  • java
阅读更多
我是一个开发经验只有半年的程序员,原来通过自学只是学习一些技术,并没有通过什么认证考试,
现在公司这两个星期工作任务不是很多,在网上查了一下,相考一些关于java方面的认证之类的,
为了自己以后的发展,不知道sun的scjp认证用处到底大不大,
希望各位给点建议.
分享到:
评论
54 楼 dvdface 2008-10-27  
我最近想考, 感觉能力已经不错了, 考这个水到渠成, 翻下SCJP指南,过这个考试应该没什么问题
53 楼 learnmore 2008-10-27  
千金散尽还复来
52 楼 laiseeme 2008-10-27  
学学基础知识挺好  但是要花10多个老头  舍不得啊
51 楼 xiaoqulai 2008-10-27  
learnmore 写道
没办法,我随便看了一下scjp的试题,把我搞的糊里糊涂的,很多题我见过,但就是知其然不知其所以然,因此我决定利用报考的机会,加深自己的理解,我虽没有想过自己要去研究很高深的东西,但是让我停留在如此肤浅的层次让我感觉很不爽.

光是一个字符串的问题,我就迷糊了很长时间,到现在还不是很清楚.
就像我才发的那个帖子
String s="abc";
          String s1="a";
          String s2="bc";
          String s3=s1+s2;
          System.out.println(s==s3);//问这里会输出什么?为什么?
我连这个是为什么都没搞清楚.


如果这个都不清楚的话,你的证书很难拿到哦,J2SE还没入门哩
50 楼 sigon 2008-10-27  
learnmore 写道
没办法,我随便看了一下scjp的试题,把我搞的糊里糊涂的,很多题我见过,但就是知其然不知其所以然,因此我决定利用报考的机会,加深自己的理解,我虽没有想过自己要去研究很高深的东西,但是让我停留在如此肤浅的层次让我感觉很不爽.

光是一个字符串的问题,我就迷糊了很长时间,到现在还不是很清楚.
就像我才发的那个帖子
String s="abc";
          String s1="a";
          String s2="bc";
          String s3=s1+s2;
          System.out.println(s==s3);//问这里会输出什么?为什么?
我连这个是为什么都没搞清楚.


跑题一下,这个问题我猜是String的+操作重新在堆里构建了字符串,而不是在常量池
49 楼 learnmore 2008-10-27  
恩 知道了 谢谢你们!
48 楼 lzmhehe 2008-10-24  
http://zangweiren.iteye.com/blog/209895

这为老大写的东西 看过了就知道 为什么了

47 楼 KimHo 2008-10-24  
1.String s3=s1+s2;//由于字符串串池的作用,String s3=s1+s2(内容为"abc"),s3会直接引用字符串变量s所引用的那个字符串对象("abc").所以,这条语句并没有在串池中添加新的字符串对象,也就是说,这条语句并没有创建任何新的字符串对象!

2.String s3=s1+s2//引用了串池中的"abc"
String s="abc"//也引用了串池中的"abc"
s3==s,结果为"false"//比较的是,两个变量的内存地址
s3.equals(s),结果为"true"//比较的是,所引用对象的"内容"(因为s和s3这两个变量所引用的字符串,是同一个,而且值都为"abc").

PS:实际上,String str1="a"+"bc"这条语句等同于String str2="abc",即只创建了一个字符串对象,而不是3个字符串对象!(前提是:在串池中,没有"abc"这个字符串).

补充一点:
String s="abc";
String s3="a"+"bc";
System.out.println(s==s3);//结果却为"True"

46 楼 wzdoxu 2008-10-24  
基础还是相当重要啊,之前对String 都没有这么透彻的了解过
45 楼 Godlikeme 2008-10-23  
基础打好,那些框架的东西学起来很容易的。
44 楼 sdh5724 2008-10-23  
如果你只是刚毕业不9, 我建议你点, 我相信你会找到一份好工作:
java.lang,java.io, java.util 看明白大部分内容。
看明白 Collection/Set的所有东西。
我相信你能明白JAVA的大部分东西, 时间差不多一个月足够了。
让那些所有的框架去死吧, 那些东西学起来很快的。
有时间去看看设计模式, 对你看框架, 理解框架比较有意义。
所谓的考试, 没有什么作用, 特别是这个东西你无法与实践联系起来, 你根本不明白那些题目的含义。
  
43 楼 major361 2008-10-23  
肯定是true
字符串常量和用new不一样
42 楼 eclipse2008 2008-10-23  
scjp用处不大,scjd还能有点用处。
41 楼 myprincejava 2008-10-23  
dengcong 写道
WorkingHard?! 写道
String s="abc";
String s1="abc";
System.out.println(s==s1);


输出个啥?

  true

呵呵!有意思...
哪?
String s="abc";
String s1=s;
System.out.println(s==s1);
哪又輸出什么?
40 楼 learnmore 2008-10-23  
foxxiao 写道

考scjp,还不如把 ssh 看下

问题是有些东西看多了,感觉就没什么兴趣了,我还是对一些java基础比较感兴趣,也非常高兴能在这遇到这么多高手!
39 楼 learnmore 2008-10-23  
javaboy2006 写道



Java代码

String a = "java";   
String b = "ja" + "va";   
String c = "ja".concat("va");   
  
System.out.println(a == b);// true   
System.out.println(a == c);// false   String a = "java";
String b = "ja" + "va";
String c = "ja".concat("va");

System.out.println(a == b);// true
System.out.println(a == c);// false
上面两种方法连接字符串也是有区别的。其实就是jvm字符串常量池的原因。 这篇文章分析的很详细了:http://java.ccidnet.com/art/3539/20070912/1210357_1.html

这篇文章非常好!
1.我才知道如果变量s1申明为final String s1="a" 的时候,效果又不一样!编译器可以把s1当成常量字符串来处理.
2.至于你说的concat,api解释是创建一个新的 String 对象,用来表示由此 String 对象表示的字符序列和由参数字符串表示的字符序列串联而成的字符序列。
既然是新创建的字符对象当然和其他对象不一样,何况这个例子中他们根本就没在一个存储区域!

谢谢!
38 楼 foxxiao 2008-10-23  
考scjp,还不如把 ssh 看下
37 楼 javaboy2006 2008-10-23  
		String a = "java";
		String b = "ja" + "va";
		String c = "ja".concat("va");

		System.out.println(a == b);// true
		System.out.println(a == c);// false

上面两种方法连接字符串也是有区别的。其实就是jvm字符串常量池的原因。
这篇文章分析的很详细了:http://java.ccidnet.com/art/3539/20070912/1210357_1.html
36 楼 learnmore 2008-10-23  
温柔一刀 写道

learnmore 写道
看了你的解释我首先有点激动,因为我感觉好像突然悟出点什么来了. 我还没去试结果,不过我想先推断一下,按照你的说法, 1.应该是所有常量池中的值都是在编译期间就确定下来的? 2.如果s3是s1和"bc"这个常量相加那么,最后输出的结果应该也是false,因为s1是一个变量所以无法在编译期间确定下来,只有等到运行期间才能确定s1的值,根据你的观点 运行期间确定的必定会在堆中有一份实例,因此s和s3也指向的是不同区域的值? 理解正确。

非常感谢!今天真是有收获!
35 楼 温柔一刀 2008-10-23  
learnmore 写道
看了你的解释我首先有点激动,因为我感觉好像突然悟出点什么来了.
我还没去试结果,不过我想先推断一下,按照你的说法,
1.应该是所有常量池中的值都是在编译期间就确定下来的?
2.如果s3是s1和"bc"这个常量相加那么,最后输出的结果应该也是false,因为s1是一个变量所以无法在编译期间确定下来,只有等到运行期间才能确定s1的值,根据你的观点
运行期间确定的必定会在堆中有一份实例,因此s和s3也指向的是不同区域的值?



理解正确。

相关推荐

    SCJP

    SCJP

    SCJP典型试题1000例

    SCJP典型试题1000例 SCJP典型试题1000例 SCJP典型试题1000例

    SCJP学习指南完整版pdf共18章

    ### SCJP学习指南知识点概述 #### 一、声明与访问控制 (Declarations and Access Control) 本书的第一章重点讲解了声明和访问控制的概念及其在Java中的应用。这些概念对于理解和掌握面向对象编程至关重要。 #####...

    SCJP认证考试指南

    SCJP – Sun Certified Java Programmer (Sun Java 程序员认证).Sun 公司作为Java 语言的发明者,对全球的Java 开发人员进行技术水平认证。该认证在国际上获得了IT 公司的普遍认可,是目前国际上最热门的IT 认证之一...

    SCJP大全

    《SCJP大全》是一款全面覆盖SCJP(Sun Certified Programmer for Java Platform, Standard Edition)考试的知识资源,旨在帮助学习者一次性通过这项重要的Java编程认证。SCJP是Java开发人员的基础认证,证明了持有者...

    SCJP试题,SCJP试题

    SCJP,全称为Sun Certified Programmer for the Java 2 Platform,是Oracle公司(原Sun Microsystems)推出的针对Java程序员的认证考试。这个考试旨在测试考生对于Java SE平台基础编程的知识和技能。以下是一些SCJP...

    SCJP考试资料pdf

    SCJP 可以说各种Java认证的基础,相对于SCJD来说,SCJP更侧重于测验您的Java程序设计概念及能力,内容偏重于Java语法及JDK的内容。其对应的最主要的学习课程是SL-275。SCJP 的学习/考试过程是相对相对比较明确的,...

    Scjp认证考试指南

    SCJP sun certificated java programmer (SCJP)  一种Java认证考试  对于Java程序设计员,Sun推出两项认证:Sun Certificated Java Programmer (SCJP)和Sun Certificated Java Developer(SCJD)。  SCJP 可以说...

    SCJP 经典练习题

    SCJP(Sun Certified Programmer for the Java 2 Platform, Standard Edition)是Oracle公司为Java程序员提供的一项权威认证,证明其在Java编程语言上的专业能力。这个认证涵盖了基础语法、类库、异常处理、多线程、...

    SCJP模拟器+JDK5.0+复习资料

    SCJP(Sun Certified Programmer for the Java 2 Platform, Standard Edition)是Oracle公司先前对Java程序员进行认证的一项考试,旨在测试开发者对于Java SE平台的基础知识和编程能力。这个压缩包文件包含了一个...

    scjp题库(中文版)

    标题所指的“scjp题库(中文版)”是一本针对Java程序员职业认证——SCJP(Sun Certified Java Programmer)考试的中文版题库。SCJP是Oracle公司早期提供的Java认证考试,后由于Oracle收购了Sun公司,该认证也随之...

    SCJP学习指南

    SCJP(Sun Certified Programmer for the Java Platform)是Oracle公司(原SUN公司)推出的一门针对Java编程语言的初级认证考试。这个认证旨在验证开发者对Java语言基础的掌握程度,包括语法、数据类型、控制结构、...

    SCJP考试相关书籍

    SCJP(Sun Certified Programmer for the Java Platform, Standard Edition)是Oracle公司(原Sun Microsystems)推出的一项Java编程语言的认证考试,旨在验证候选者对Java SE平台的基础知识和编程能力。这个认证...

    scjp模拟器scjp模拟器

    SCJP(Sun Certified Programmer for the Java 2 Platform, Standard Edition)是Oracle公司先前为Java程序员提供的一个认证考试,旨在验证候选者对Java编程语言的基本理解与应用能力。这个"scjp模拟器"可能是用于...

    Java SCJP中文学习指南

    Java SCJP,全称为Sun Certified Programmer for the Java 2 Platform, Standard Edition,是Oracle公司针对Java初学者和专业开发者的一项认证考试。这个“Java SCJP中文学习指南”旨在帮助中文使用者深入理解Java...

    SCJP官方教材中文版

    《SCJP官方教材中文版》是一本专门为准备SCJP(Sun Certified Programmer for the Java 2 Platform, Standard Edition)考试的学员编写的指南。SCJP,现已被Oracle认证为Oracle Certified Associate, Java SE 8 ...

    scjp题库(收集了CSDN上大部分题库,近1000道SCJP试题)

    SCJP,全称为Sun Certified Programmer for the Java 2 Platform, Standard Edition,是Oracle公司(原Sun Microsystems)为Java程序员提供的一项认证考试。这个题库包含了近1000道题目,旨在帮助考生全面掌握Java ...

    SCJP考试模拟软件

    SCJP(Sun Certified Programmer for the Java 2 Platform, Standard Edition)是Oracle公司为Java程序员提供的一项认证考试,旨在验证考生对Java编程语言的基础知识和理解。这个“SCJP考试模拟软件”显然是一款帮助...

    [浪曦原创]SCJP试题解析视频课程(胡屹)

    资源名称:[浪曦原创]SCJP试题解析视频课程(胡屹)资源目录:【】[A309]SCJP视频解析—序列化【】[A310]SCJP视频解析—字符串上【】[A311]SCJP视频解析—字符串下【】[A312]SCJP试题解析—Constructors【】[A318]SCJP...

Global site tag (gtag.js) - Google Analytics