1.java的基本数据类型,及所占字节和范围

byte:  字节型,占1个字节,8位,范围是   -2^7 ~   2^7-1

short:短整型,占2个字节,16位,范围是 -2^15 ~ 2^15 -1

int: 整形,占4个字节,32位,范围是-2^31 ~ 2^31 -1

long: 长整型 ,占8个字节,64位,范围是 -2^63  ~  2^63-1

float: 单精度浮点型,占4个字节,32位,不能表示精确的值。变量值后边必须加F或f,否则会编译不通过

double:双精度浮点型,是浮点数的默认类型。占8个字节,64位,也不能表示精确的值

boolean:布尔型,占1个字节,8位

char:字符型,占2个字节,16位,范围为(0~65535)

2.数组的定义及相关操作

public static void main(String[] args) {
//正确的定义
int[] arr = {1,2,2,4,5,6};
int arr1[] = {1,2,3,4}; //不推荐
int[] arr2 = new int[] {1,2,3};
int[] arr3;
arr3 = new int[] {1,2,3};
int[] arr4 = new int[3];
//数组的复制
System.arraycopy(arr1, 0, arr4, 0, 3);
System.out.println(arr4[2]);
int[] arr5 = Arrays.copyOf(arr, 3); //推荐使用这种方法,能对数组进行扩容
//数组排序。默认为升序
Arrays.sort(arr);
//二分法查询某个元素是否在数组中,存在返回元素的索引,不在则返回一个负数的插入点
int binarySearch = Arrays.binarySearch(arr, 10);
System.out.println(binarySearch);
//多维数组
int[][] mrr = new int[2][3]; // 2指包含了2个一维数组,3指每个一维数组包含3个元素 }

3.java中内存分配

栈:存储正在调用方法中的所有局部变量(包括参数),

  调用方法时,在栈中为该方法分配一块对应的栈帧,栈帧中存储方法中所有的局部变量(包括参数),方法调用完成后,栈帧被清除,局部变量一并消失

堆:存储所有new出来的对象(包括成员变量)

方法区:存储.class字节码文件(包括方法),方法只有一份,通过this来区分具体的对象

常量池: 常量池是方法区的一部分,主要用来存放常量和类中的符号引用等信息。

4.java中各种变量的生命周期

成员变量:创建对象时存在堆中,对象被回收时一并消失

局部变量:调用方法中存在栈帧中,方法调用结束时与栈帧一并消失

静态变量:类首次被加载时静态变量被分配空间,程序结束后由系统释放.

5.Web项目中几种设置编码作用

 

 a. 设置JSP编译成Servlet时使用的编码: pageEncoding=”UTF-8”

  b. 指定服务器响应给浏览器的编码: 

    1>response.setContentType("text/html;charset=UTF-8")

    2>response.setCharacterEncoding("UTF-8");

  c. 对请求参数的编码设置:

    post请求时:request.setCharacterEncoding(“UTF-8”);  必须放在所有的getParams()前面

    get请求时:1>修改tomcat的server.xml中的 URIEncoding属性

           2>str = new String(str.getBytes("iso-8859-1"),"utf-8");

  

          

 

  

java易混淆知识小结的更多相关文章

  1. Java易混淆的概率:成员变量、类变量、实例变量、局部变量

    先看代码 public class Variable{ int b=0; //实例变量 static int a=0; //类变量 final String c="wws"; // ...

  2. java易混淆概念之类变量、成员变量、局部变量

      类变量.成员变量.局部变量 类变量(也叫静态变量)是类中独立于方法之外的变量,用static 修饰.(static表示“全局的”.“静态的”,用来修饰成员变量和成员方法,或静态代码块(静态代码块独 ...

  3. 浏览器的多线程和js的单线程--前端易混淆知识科普(一)

    问题:js是单线程的,页面是从上往下加载的,那么是不是第一个js没加载完成,第二个js就不加载?然后,引申出来一个问题就是,那css和图片呢?这之间的加载有相互影响吗? 1.什么是线程?什么是进程?什 ...

  4. JAVA 变量 数据类型 运算符 知识小结

    ---------------------------------------------------> JAVA 变量 数据类型 运算符 知识小结 <------------------ ...

  5. 【C#小知识】C#中一些易混淆概念总结(七)---------解析抽象类,抽象方法

    目录: [C#小知识]C#中一些易混淆概念总结--------数据类型存储位置,方法调用,out和ref参数的使用 [C#小知识]C#中一些易混淆概念总结(二)--------构造函数,this关键字 ...

  6. 【C#小知识】C#中一些易混淆概念总结(六)---------解析里氏替换原则,虚方法 分类: C# 2014-02-08 01:53 1826人阅读 评论(0) 收藏

    目录: [C#小知识]C#中一些易混淆概念总结--------数据类型存储位置,方法调用,out和ref参数的使用 [C#小知识]C#中一些易混淆概念总结(二)--------构造函数,this关键字 ...

  7. 【C#小知识】C#中一些易混淆概念总结(五)---------继承 分类: C# 2014-02-06 22:05 1106人阅读 评论(0) 收藏

    目录: [C#小知识]C#中一些易混淆概念总结--------数据类型存储位置,方法调用,out和ref参数的使用 [C#小知识]C#中一些易混淆概念总结(二)--------构造函数,this关键字 ...

  8. 【C#小知识】C#中一些易混淆概念总结(五)---------深入解析C#继承

    目录: [C#小知识]C#中一些易混淆概念总结--------数据类型存储位置,方法调用,out和ref参数的使用 [C#小知识]C#中一些易混淆概念总结(二)--------构造函数,this关键字 ...

  9. 【C#小知识】C#中一些易混淆概念总结(四)---------解析Console.WriteLine() 分类: C# 2014-02-05 17:18 1060人阅读 评论(0) 收藏

    目录: [C#小知识]C#中一些易混淆概念总结 [C#小知识]C#中一些易混淆概念总结(二) [C#小知识]C#中一些易混淆概念总结(三) ------------------------------ ...

随机推荐

  1. AI - TensorFlow - 示例02:影评文本分类

    影评文本分类 文本分类(Text classification):https://www.tensorflow.org/tutorials/keras/basic_text_classificatio ...

  2. 【机器学习】--FP-groupth算法从初始到应用

    一.前述 二.构建FP_groupth数流程 1.扫描事务数据库D 一次.收集频繁项的集合F 和它们的支持度.对F 按支持度降序排序,结果为频繁项表L. 2.创建FP 树的根节点,以“null”标记它 ...

  3. 面试官: 说说看, 什么是 Hook (钩子) 线程以及应用场景?

    文章首发自个人微信号: 小哈学Java 个人网站地址: https://www.exception.site/java-concurrency/java-concurrency-hook-thread ...

  4. QPainterPath 不规则提示框

    currentPosition()是最后一次绘制后的“结束点”(或初始点),使用moveTo()移动currentPosition()而不会添加任何元素. QPainterPath ​合并: 1.方法 ...

  5. 目标检测 非极大值抑制(Non-Maximum Suppression,NMS)

    非极大值抑制(Non-Maximum Suppression,NMS),顾名思义就是抑制不是极大值的元素,可以理解为局部最大搜索.也可以理解为只取置信度最高的一个识别结果. 举例:  如图所示,现在 ...

  6. Java集合必会14问(精选面试题整理)

    前言:把这段时间复习的关于集合类的东西整理出来,特别是HashMap相关的一些东西,之前都没有很注意1.7 ->> 1.8的变化问题,但后来发现这其实变化挺大的,而且很多整理的面试资料都没 ...

  7. 使用SSL安全证书和nginx配置将域名HTTPS化

    一.在阿里云后台申请免费版证书: 二.在域名解析里面添加记录: 三.提交审核: 四.等待审核通过后,下载nginx证书: 五.按照文档修改nginx配置文件: https://help.aliyun. ...

  8. qutebrowser 只用键盘操作的浏览器

    一个 Qt 库制作的最简化浏览器,内核是 Chromium.最大特点就是它自带命令行,可以完全用键盘操作. 下载地址: 链接:https://share.weiyun.com/5Y2Ajvn 密码:m ...

  9. 20190329-盒尺寸、boder-

    目录 1.盒尺寸四家庭 width:宽度 height:高度 margin:外边距 padding:内边距 盒模型: 2.border边框 border简写:border-position(top | ...

  10. 学习笔记—JDBC

    JDBC的概念 JDBC(Java DataBase Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言 ...