1.  equals()  和  ==  运算符

- equals是方法, 而==是运算符(当然也可以说是广义上的方法, 或者最终都是调用方法).

- equals() 是从Object类中继承来的, 在Object中 equals是直接调用的 ==运算符.

- 在equals中, 怎么比较, 可以自己定义, 而 == 运算符是直接比较的变量中直接存放的值.

- 对于8种基本类型而言, 变量内存放的就是值, 所以使用 == 运算符比较的时候是比较它们的值(不同的基本类型也可以比较, 如 int 和 char).

- 对于对象而言, 变量存放的是对象的引用, 如: String str = new String("Roger"); str存放的是对象的地址. 所以, 不同的对象, 即使它们的值相同, 引用也不一定相同.

2. 抽象类

- 包含抽象方法的类, 所以要想理解抽象类 , 先理解抽象方法

- 抽象方法

- 没有具体实现, 必须用 abstract 修饰

- 必须为public, 因为必须让之类继承和实现. (如果为private, 则不能被子类继承.) 缺省为public

- 抽象类

- 不能定义对象(因为有残缺的方法, 就算定义出来也是残疾对象, 没用)

- 如果子类没有实现它的所有抽象方法, 子类也是抽象类.

3. 接口

- 接口泛指供别人调用的方法或者函数. 所以它可以看作是对行为的抽象.

- 可以包含变量和方法

- 变量: 被隐式指定为public static final的. 一般情况下不在接口中定义变量.

- 方法: 被隐式指定为public abstract 的.

- 接口中所有方法都必须是抽象方法(抽象类中可以有非抽象方法.).

- 不能含静态代码块及静态方法(抽象类可以有).

4. 接口和抽象类对比

- 语法上: 可以根据定义进行区别

- 设计上

- 抽象类是对一类事物的抽象, 即对类抽象. 而接口是对行为抽象.

- 接口是对行为的规范, 而抽象类即规范了行为, 又规范了属性.

java容易搞混的技术_Java中比较容易混淆的知识点相关推荐

  1. java的数据库连接编程(jdbc)技术_Java的数据库连接编程(JDBC)技术

    Java的数据库连接编程(JDBC)技术 Java的数据库连接编程(JDBC)技术 [本讲的知识要点]:JDBC.JDBC的工作原理,访问数据库的方法.Statement.PreparedStatem ...

  2. java的自增自减_Java中自增和自减操作符(++/--)的那些事

    自增(++)和自减(--)运算符 在JAVA语言中存在着很多运算符,但是在实际开发中我们或许很少用到它们,在初次学习中却时常出现它们的身影,对于这些运算符的含义和用法,是否还记得呢? 1. 概述 自增 ...

  3. java什么是栈和堆_JAVA中的栈和堆

    JAVA在程序运行时,在内存中划分5片空间进行数据的存储.分别是:1:寄存器.2:本地方法区.3:方法区.4:栈.5:堆. 基本,栈stack和堆heap这两个概念很重要,不了解清楚,后面就不用学了. ...

  4. java中的技术_Java中的四个核心技术思想

    [导读]Java已经成为一个庞大而复杂的技术平台, 关于开发人员而言, 要想更好的掌握Java技术, Java已经成为一个庞大而复杂的技术平台, 关于开发人员而言, 对核心概念和思想的掌握可以帮助我们 ...

  5. java文件下载用什么技术_Java中实现文件上传下载的三种解决方案(推荐)

    javaweb上传文件 上传文件的jsp中的部分 上传文件同样可以使用form表单向后端发请求,也可以使用 ajax向后端发请求 1.通过form表单向后端发送请求 Save 改进后的代码不需要for ...

  6. java数值型转字符型_Java中数值型,字符型及字符串的相互转换

    Java中数值型,字符型及字符串的相互转换由广州疯狂软件教育java培训分享: 刚开始学习Java不就前些时日被转换问题搞得有点凌乱在这里整理一下. 1.字符型与数值型之间的转换 (1)要将一个整数转 ...

  7. java io和nio的区别_Java中IO和NIO的本质和区别

    导读热词 简介 终于要写到java中最最让人激动的部分了IO和NIO.IO的全称是input output,是java程序跟外部世界交流的桥梁,IO指的是java.io包中的所有类,他们是从java1 ...

  8. java判断一个对象是否为空_Java中判断对象是否为空的方法的详解

    首先来看一下工具StringUtils的判断方法: 一种是org.apache.commons.lang3包下的: 另一种是org.springframework.util包下的.这两种StringU ...

  9. java list 去重 相同的相加_Java 中的数据流和函数式编程 | Linux 中国

    学习如何使用 Java 8 中的流 API 和函数式编程结构.-- Marty Kalin 当 Java SE 8(又名核心 Java 8)在 2014 年被推出时,它引入了一些更改,从根本上影响了用 ...

最新文章

  1. xm console无法联接guest问题的解决
  2. JAVA的思维逻辑_[Java教程]计算机程序的思维逻辑
  3. [css] 使用rem的优缺点是什么?和使用百分比有什么区别?
  4. Extjs格式化时间
  5. Kia#39;s Calculation(贪心)
  6. 过拟合的含义、出现原因及解决方案
  7. java 高效遍历map_精髓!Java中遍历Map集合的五种方式
  8. mysql如果索引为uid间隙锁_MySQL-浅析间隙锁
  9. mysql front 连接类型,MySQL-Front如何连接数据库
  10. Redis(二)Redis客户端的使用
  11. SMT贴片加工回流焊接出现的问题和解决对策
  12. 爬虫(19)pipline补充+item的讲解+古诗文案例
  13. 周杰伦一发新歌,服务器为什就挂掉了?
  14. 非零基础自学Golang 第15章 Go命令行工具 15.4 注释文档(doc)
  15. C++位操作与、或、非、异或、取反详解
  16. 陈飞龙 java,二、简单几步下载安装JMeter
  17. 【目标检测数据集汇总】YOLO txt格式各种数据集
  18. 基于精灵(Sprite)管道烟雾流动效果
  19. 万物新生(爱回收)三季度GMV与收入均超预期达成 总营收同比增长48%
  20. 【PMP】一、项目管理框架

热门文章

  1. 使用jsp循环查询mysql_[JSP] 创建mysql数据库利用JSP进行数据库查询(1)
  2. win10安装Unbuntu的Linux系统的虚拟机
  3. linux减小根目录空间_Linux目录结构及文件基本操作详解
  4. 高职院校计算机基础课程,高职院校计算机基础课程教学探讨的论文
  5. OpenShift Security (2) - 安装 Red Hat Advanced Cluster Security(RHACS)
  6. ElementUI项目优化上线
  7. Chrome 将逐步阻止浏览器中的混合内容下载
  8. odoo10参考系列--命令行接口:odoo-bin
  9. linux 网卡no carrier,linux centos 7 网卡突然不能上网异常解决
  10. 电脑刷机重装系统_手机刷机,原来也没有那么复杂