JAVA项目复习的一些小细节
使用javadoc完成自动文档,这一段将在后期进行介绍。
类,方法和变量的作用域。
使用修饰符public和修饰符private,对于类和方法来说并没有什么不妥的,但是变量使用public却在某些时刻看起来很愚蠢。
典型情况下是应该将变量的访问定义为private。
为类定义相等的方法。当我们在使用==运算符比较两个对象时,我们其实是在检测他们是否有相同的内存地址,而不是直观意义上的相等。所以我们可以选择一个equals方法来实现我们的目标。比如我们在看两个对象是否相等时我们应该选择比较比较他们对应的每一个量的值,方法名的签名应该定义为:public boolean equals(对象对应的类名 对象名),在比较时只要用创建的对象调用该方法,参数就是要比较的对象就好了,然后通过返回值就可以判断两个对象是否是真正意义上的相等。
比较字符串:
String类,要查看两个字符串是否有相同的值,你必须使用equal方法而不是==。例如字符串s1合s2拥有相同的值,你必须使用equal方法而不是使用==。使用方法s1.equals(s2);
当然我们也可以尝试equalsIgnoreCase。这个方法的行为与equals类似。除了equalsIgnoreCase把同一个字母的大写和小写形式看做相同字母这一点以外,例如,“Hello”和“hello”最后的结果是相同的。
Java中的toString方法的解析
toString是Object类的方法,所有类都从Object类继承。如果你定义的类没有覆盖toString方法,则对象在调用toString方法时用的是Object类toString方法,返回的是“类名@hashcode". System.out.println(obj)在参数是一个对象时,会首先调用该对象的toString方法。 而String类和StringBuffer类都覆盖了toString方法,都是返回字符串。 所以带不带toString效果是一样的。
JAVA项目复习的一些小细节的更多相关文章
- 【Java】需要注意的小细节
		
一.==和equals 1.比较两个变量时 a.==可以判断两个变量是否相等,如果两个变量是基本类型变量,而且是数值类型,只要两个变量值相等,返回true. 2.比较两个引用变量 a.==只有两个引用 ...
 - java中需要注意的小细节
		
很早以前就打算写博客,但是总是因为不知道写什么,或是觉得博客里其他人已经把我要写的整理很好了而迟迟没有动笔,现在决定把自己平时的记录的一些笔记拿出来,希望大神们可以批评指导,并且希望能够帮助一些刚刚入 ...
 - 学习Java,容易被你忽略的小细节(3)
		
在<学习Java,容易被你忽略的小细节(2)>中我们已经深入讨论过String类中equals()方法的使用,在本文中我们将进一步讨论equals()方法在其他境况下的使用方法. 首先,我 ...
 - 学习Java,容易被你忽略的小细节(2)
		
昨天心情真的太糟糕了,写完<学习Java,值得注意你注意的问题(1)>之后,迎来些许的支持以后就是一片片的谴责.我的主页上涌现出许许多多Java方面的牛人,谴责我水平太低,写的问题太初级. ...
 - 学习Java,值得你留意的问题(1)更名为《学习Java,容易被你忽略的小细节(1)》
		
记得大二快要结束的时候,有个女孩子突然问我“你会Java吗,帮我做大作业好吗?” 实话说,那个女孩真的很漂亮,我当时也非常想帮她.但是我从来没有接触过Java,让我在短短的几天内完成Java程序设计课 ...
 - JAVA项目如何打开,打开乱码怎么办,字体太小怎么办,感叹号是什么情况
		
打开java项目 Finish 汉字乱码改这里 字体大小改在第一个的 Appearance里面 项目前面有感叹号,都是tomcat和jdk配置有问题
 - 下载eclipse   配置eclipse   新建Java项目   写一个小程序  运行
		
为了更好的学习java,我打算下载个eclipse 地址:https://www.eclipse.org/downloads/packages/ 我们需要下载的版本是Eclipse IDE for J ...
 - 一次从0到1的java项目实践清单
		
虽说工作就是简单的事情重复做,但不是所有简单的事你都能有机会做的. 我们平日工作里,大部分时候都是在做修修补补的工作,而这也是非常重要的.做好修补工作,做好优化工作,足够让你升职加薪! 但是如果有机会 ...
 - 一份从0到1的java项目实践清单
		
虽说工作就是简单的事情重复做,但不是所有简单的事你都能有机会做的. 我们平日工作里,大部分时候都是在做修修补补的工作,而这也是非常重要的.做好修补工作,做好优化工作,足够让你升职加薪! 但是如果有机会 ...
 
随机推荐
- Value '0000-00-00' can not be represented as java.sql.Date
			
Value '0000-00-00' can not be represented as java.sql.Date 时间 2014-07-30 09:00:50 ITeye-博客 原文 http: ...
 - mongodb type it for more
			
当使用MongoChef Core 链接mongodb的时候 ,需要查看更多的数据时候,系统提示 type it for more 可以设置系统参数 DBQuery.shellBatchSize = ...
 - cocos2d-x 混合模式
			
在OpenGL(ES),使用glBlendFunc函数实现实现混合模式,cocos2d-x中可以使用BlendFunc. 什么是颜色混合?简单来说就是将RGBA中的A,经行操作处理.具体一点,就是把某 ...
 - drawableLayout的使用(转载讲的比较清晰的文章)
			
创建drawbler的布局文件 初始化drawbler的列表 响应drawable列表点击事件 现在侧滑菜单使用很多,大都是通过SlidingMenu实现.现在也可以通过DrawerLayout 创建 ...
 - Bitcode问题
			
原因:Xcode7 及以上版本会默认开启 bitcode .bitcode具体是什么就不解释了.解决方法:1.更新library使包含Bitcode,否则会出现以上的警告.2.关闭Bitcode,简单 ...
 - Opencv2系列学习笔记10(提取连通区域轮廓) 另一个
			
http://blog.csdn.net/lu597203933/article/details/17362457 连通区域指的是二值图像中相连像素组成的形状.而内.外轮廓的概念及opencv1中如何 ...
 - cmstop传递什么控制器和方法---就实例化该控制器
			
object顶级类class object 第一级抽象类controllerabstract class controller extends object 第二级抽象类controller_abst ...
 - (转) 三个nginx配置问题的解决方案
			
今天开启了nginx的error_log,发现了三个配置问题: 问题一: 2011/07/18 17:04:37 [warn] 2422#0: *171505004 an upstream respo ...
 - Cake
			
Cake Time Limit : 1000/1000ms (Java/Other) Memory Limit : 32768/32768K (Java/Other) Total Submissi ...
 - flash cs6 更新到Flash player15.0 及Air 更新方法
			
1.自行下载Air 15.0 sdk (Flash player 包含在内) 2. 到15.0Air 包 里找player :AIR15.0\frameworks\libs\player 里面有pl ...