java中易错点
1、A instanceof B{这是没有好好利用java多态的表现}
java中的二元操作符,测试A对象是否是B类的实例;
返回值:boolean类型
2、“==”与 “equals”的区别:
==:是比较两个变量的值,并不涉及两个对象内容的比较;
equals:比较两个对象的内容是否相同,实质比较的是:指向对象所在的内存地址;
package fdx.com.oneproblem; public class OneTest {
public static void main(String[] args){
//==、equals的区别:
String str = new String("123");
String b = new String("123");
if(str == b){
System.out.println("==:"+true);
}else {
System.out.println("==:"+false);
}
if(str.equals(b)){
System.out.print("equals:"+true);
}else {
System.out.println("equals:"+false);
}
}
}
得到的结果:
==:false
equals:true
3、final关键字【修饰符】
使得修饰的变量“不变”,当用来修饰对象时,就会是对象的引用不变,{引用本身不变、引用指向的对象不变}
4、声明了什么?
String str = "Hello World";
描述:声明了一个String类型的对象引用变量str,内容是“Hello World”;而不是简单的描述:为声明了一个对象
5、str所指向的对象是否改变了呢?
比如:String str = “Hello”;
str = str + "World";
描述:str原先指向一个String对象,内容是"Hello",然后我们对s进行了+操作,那么s所指向的那个对象是否发生了改变呢?答案是没有。这时,str不指向原来那个对象了,而指向了另一个String对象,内容为"Hello world",原来那个对象还存在于内存之中,只是str这个引用变量不再指向它(Hello)了;
这样子的话会出现这样子的问题结论:【使用String来表示时不时发生变化的字符串的话,会造成内存的开销】如果经常对字符串进行各种各样的修改,或不可预见的修改,那么使用String来代表字符串的话会引起很大的内存开销。因为String对象建立之后不能再改变,所以对于每一个不同的字符串,都需要一个String对象来表示。
如果遇到随时会变的字符串,那么需要使用StringBuffer来声明字符串,因为StringBuffer允许修改,而且不是每个不同的字符串都要生成一个新的对象。
java中易错点的更多相关文章
- java中易错点(二)
java,exe是java虚拟机 javadoc.exe用来制作java文档 jdb.exe是java的调试器 javaprof,exe是剖析工具 解析一: sleep是线程类(Thread)的方法, ...
- java中易错点(一)
由于replaceAll方法的第一个参数是一个正则表达式,而"."在正则表达式中表示任何字符,所以会把前面字符串的所有字符都替换成"/".如果想替换的只是&qu ...
- Java字符串易错方法总结
Java字符串易错方法总结 public String[] split(String regex) 和 public String[] split(String regex,int limit) li ...
- 【经验总结】Java在ACM算法竞赛编程中易错点
一.Java之ACM易错点 1. 类名称必须采用public class Main方式命名 2. 在有些OJ系统上,即便是输出的末尾多了一个“ ”,程序可能会输出错误,所以在我看来好多OJ系统做的是非 ...
- java考试易错题大全
常见的Java问题 1.什么是Java虚拟机?为什么Java被称作是"平台无关的编程语言"? Java虚拟机是一个可以执行Java字节码的虚拟机进程.Java源文件被编译成能被Ja ...
- java中易遗忘的知识,不定时更新……
如果有人问你: "子类继承父类所有非私有(private)的属性和方法这句话对吗?", 如果你回答对的, 那我只能说too young too simple! 关于代码块和成员变量 ...
- Hibernate中易错地方的总结
1.Hibernate中的配置文件要放在src下,注意不能放在包目录下 2.Hibernate中@Before @After方法不能再普通的类里用,只有在专门的JUnit测试用例里面用. 3.使用 ...
- java初级易错问题总结
1.什么是变量?变量的定义格式?要使用变量需要注意什么?就是可变的量数据类型 变量名 = 数值;同一范围内不能重复定义不赋值不能使用 2.Java中的数据类型分几类?基本数据类型有哪些?两大类 ...
- java数据类型易错点简单总结,欢迎大神前辈补充!谢谢
数据类型那这边看似简单,花了我很长时间也就是才练到几成"功力"吧.还希望路过的大神在下面补充,菜鸟的我深受感谢! 首先看两个思考题 思考题1:请问下面这个有没有问题 double ...
随机推荐
- C# 扩展方法——获得枚举的Description
其他扩展方法详见:https://www.cnblogs.com/zhuanjiao/p/12060937.html /// <summary> /// 扩展方法,获得枚举的Descrip ...
- EasyUI DataGrid undefined处理
处理undefined var val = null; console.log(val); console.log(val || ""); val = undefined; con ...
- Angular 应用的外壳
你首先需要使用 Angular CLI 来创建一个初始化的应用.随后,你将对你已经初始化的应用进行修改来让你构建出 Tour of Heroes app(英雄指南) 这个应用. 在教程的本部分,你需要 ...
- HGOI 20190705 题解
Problem A 树状数组 给出数x,一直执行x = x and (x+1)-1 直到 x=0 为止 询问这个数执行运算的次数. 这个数以二进制的形式表述出 x = s1 & s2 .... ...
- matplotlib绘图时显示额外的“figure”浮窗
引自 https://blog.csdn.net/weixin_41571493/article/details/82690052 问题:现在默认的Pycharm绘图时,都会出现下面的情况: 不能弹出 ...
- ubuntu开启ssh服务时,报:start:Unknown job : ssh
这里是参考网站资料,并记录下. 如图所示: 解决方法: 输入以下命令即可 /usr/sbin/sshd mkdir /var/run/sshd /usr/sbin/sshd netstat -nlt ...
- <meta>标签 的一些用法
网上找到的一些资料:自己留着! 链接 :http://www.wzsky.net/html/Website/htmlcss/116165.html meta是html语言head区的一个辅助性标签.也 ...
- Java并发编程的艺术笔记(五)——Java中的锁
一.Lock接口的几个功能: 显示的获取和释放锁 尝试非阻塞的获取锁 能被中断的获取锁 超时获取锁 使用方式: Lock lock = new ReentrantLock(); lock.lock() ...
- Kotlin学习入门笔记
参考资料 官网:https://kotlinlang.org/ 官方文档:https://kotlinlang.org/docs/reference/ Kotlin 源码:https://github ...
- spark 2015 发展方向
https://www.youtube.com/watch?v=YWppYPWznSQ Databrick的spark 2015规划聚会的视频,看起来今年会在SQL和MLlib上发力多一点. ...