数据类型

1.基本数据类型:四类八种。

2.数据范围与字节数不一定相关。如float为4字节表示范围比long的8字节要大。

3.浮点数默认double类型,如要用float,需加F。

4.boolean类型不能进行数据类型转换。

5.对于基本类型来说,==是进行数值比较;对于引用类型来说,==是进行地址值比较。

算术运算符

1.对于String字符串类型来说,“+”代表字符串连接操作。

2.byte,short,char三种类型进行运算时,都会被首先提升为int类型,再进行计算。

方法

1.方法重载与方法的返回值无关。

2.当数组作为参数传递到方法中时,传递的是数组的地址值。

3.当方法的局部变量和成员变量重名时,根据就近原则,优先使用局部变量。

数组

1.数组的长度在运行期间不可被改变。

2.静态初始化时,数组先有个默认值,随后立即被赋值。

字符串

1.字符串中的内容永不可变。

2.字符串可以共享使用。

3.字符串效果相当于char[]字符数组,但底层原理是byte[]字节数组。

4.通过双引号""定义的字符串在字符串常量池中,new出来的字符串不在常量池中。

关键字

  • static

    1.静态变量属于类,被所有对象共享。

    2.静态方法不能直接访问非静态变量,也不能使用this关键字。

继承

1.Java语言是单继承的(一个类的直接父类只能有一个)。

2.子类必须调用父类构造方法。

匿名

1.匿名内部类在创建对象时只能使用唯一一次。

2.匿名对象在调用方法时只能使用唯一一次。

集合

1.集合是一种容器,用来存储多个数据。

2.集合的长度可以改变。

3.集合存储的是对象,对象的类型可以不一致。

  • List接口

    1.有序(存储和取出的顺序相同)。

    2.允许存储重复元素。

    3.有索引。

  • Set接口

    1.不允许存储重复元素。

    2.没有索引。

内存划分

Java中的内存总共划分为五个部分。

  1. (Stack):存放方法中的局部变量。(方法的运行在栈中)

    局部变量:方法的参数或者方法{}内部的变量。

    作用域:一旦超出作用域,立即从栈内存消失。

  2. (Heap):凡是new出来的东西都在堆当中。

    堆内存里的东西都有一个地址值:16进制。

    堆内存里面的数据都有默认值:

    数据类型 默认值
    整数 0
    浮点数 0.0
    字符 '\u0000'
    布尔 false
    引用类型 null
  3. 方法区(Method Area):存储.class相关信息,包含方法的信息(只存储死信息)

  4. 本地方法栈(Native Method Stack):与操作系统相关。

  5. 寄存器(pc Register):与CPU相关,性能非常高。

其他注意

1.ArrayList集合不能直接存储整数,可以存储Integer包装类。

关于编译器

1.对于byte,short,char三种类型的数据来说,如果右侧数据没有超过左侧范围,则编译器补上强转;如果右侧数据超过左侧范围,则编译器报错。

2.如果等号右侧的表达式是一串常量,没有变量参与,则该表达式在编译时就进行了运算,而不是等到程序运行时再计算。“编译器的常量优化”.

3.字符串“重地”和字符串“通话”的哈希值是一样的。


ArrayList集合

  • 底层原理是数组,所以查询快增删慢

LinkedList集合

  • 底层原理是链表,所以查询慢增删快

Vector集合

  • 底层原理也是数组,不过是单线程的,实现比较慢。(了解)

重看Java教学视频时的查漏补缺的更多相关文章

  1. Java查漏补缺(3)(面向对象相关)

    Java查漏补缺(3) 继承·抽象类·接口·静态·权限 相关 this与super关键字 this的作用: 调用成员变量(可以用来区分局部变量和成员变量) 调用本类其他成员方法 调用构造方法(需要在方 ...

  2. Java基础查漏补缺(2)

    Java基础查漏补缺(2) apache和spring都提供了BeanUtils的深度拷贝工具包 +=具有隐形的强制转换 object类的equals()方法容易抛出空指针异常 String a=nu ...

  3. Java基础查漏补缺(1)

    Java基础查漏补缺 String str2 = "hello"; String str3 = "hello"; System.out.println(str3 ...

  4. 20165223 week1测试查漏补缺

    week1查漏补缺 经过第一周的学习后,在蓝墨云班课上做了一套31道题的小测试,下面是对测试题中遇到的错误的分析和总结: 一.背记题 不属于Java后继技术的是? Ptyhon Java后继技术有? ...

  5. js基础查漏补缺(更新)

    js基础查漏补缺: 1. NaN != NaN: 复制数组可以用slice: 数组的sort.reverse等方法都会改变自身: Map是一组键值对的结构,Set是key的集合: Array.Map. ...

  6. CSS基础面试题,快来查漏补缺

    本文大部分问题来源:50道CSS基础面试题(附答案),外加一些面经. 我对问题进行了分类整理,并给了自己的回答.大部分知识点都有专题链接(来源于本博客相关文章),用于自己前端CSS部分的查漏补缺.虽作 ...

  7. 【Android面试查漏补缺】之事件分发机制详解

    前言 查漏补缺,查漏补缺,你不知道哪里漏了,怎么补缺呢?本文属于[Android面试查漏补缺]系列文章第一篇,持续更新中,感兴趣的朋友可以[关注+收藏]哦~ 本系列文章是对自己的前段时间面试经历的总结 ...

  8. 今天開始慢下脚步,開始ios技术知识的查漏补缺。

    从2014.6.30 開始工作算起. 如今已经是第416天了.不止不觉.时间过的真快. 通过对之前工作的总结.发现,你的知识面.会决定你面对问题时的态度.过程和结果. 简单来讲.知识面拓展了,你才干有 ...

  9. Mysql查漏补缺笔记

    目录 查漏补缺笔记2019/05/19 文件格式后缀 丢失修改,脏读,不可重复读 超键,候选键,主键 构S(Stmcture)/完整性I(Integrity)/数据操纵M(Malippulation) ...

随机推荐

  1. ML第6周学习小结

    本周收获 总结一下本周学习内容: 1.学习了<深入浅出Pandas>的第六章:Pandas分组聚合 6.1概述 6.2分组 6.3分组对象的操作 我的博客链接: Pandas 分组聚合 : ...

  2. 「NOI2019」序列

    NKOJ卡常卡不过QAQ description 给两个A,B序列,让你分别在A,B中各选k个数,其中至少有L对下标相等. Solution 把问题转化为至多选n-K对下标不同的对. 配对问题就用费用 ...

  3. Python数据分析--Numpy常用函数介绍(9)--Numpy中几中常见的图形

    在NumPy中,所有的标准三角函数如sin.cos.tan等均有对应的通用函数. 一.利萨茹曲线 (Lissajous curve)利萨茹曲线是一种很有趣的使用三角函数的方式(示波器上显示出利萨茹曲线 ...

  4. flink-执行模式

    flink的执行模式 flink既能处理离线数据,也能处理实时数据,在1.12.0版本以前,批数据返回的数据集合是dataSet,对应一套dataSet的api,从1.12.0版本以后,flink实现 ...

  5. redis入门,linux安装

    1.下载 https://redis.io/download 2.上传到linux服务器tools文件夹下 3.解压到安装目录 tar -zxf /app/redis/redis-5.0.4.tar. ...

  6. 31.Squid缓存代理服务器应用

    Squid缓存代理服务器应用 Squid安装介绍 web缓存的工作机制 缓存网页对象,减少重复请求 squid 主要提供缓存加速.应用层过滤控制的功能. 工作机制 代替客户机问网站请求数据,从而可以隐 ...

  7. 一文精通HashMap灵魂七问,你学还是不学

    如果让你看一篇文章,就可以精通HashMap,成为硬刚才面试官的高手,你学还是不学? 别着急,开始之前不如先尝试回来下面几个问题吧: HashMap的底层结构是什么? 什么时候HashMap中的链表会 ...

  8. 用python制作文件搜索工具,深挖电脑里的【学习大全】

    咳咳~懂得都懂啊 点击此处找管理员小姐姐领取正经资料~ 开发环境 解释器: Python 3.8.8 | Anaconda, Inc. 编辑器: pycharm 专业版 先演示效果 开始代码,先导入模 ...

  9. LeetCode. 812. 最大三角形面积

    812. 最大三角形面积 鞋带公式 鞋带公式,用于计算任意多边形的面积,可用于计算三角形的面积 已知 ΔABC 三个顶点的坐标 A:(x1,y1). B:(x2,y2). C:(x3,y3) 对应的矩 ...

  10. Leetcode 不同路径系列

    Leetcode不同路径系列题解笔记 62. 不同路径 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 "Start" ). 机器人每次只能向下或者向右移动一 ...