当前位置:首页 > Java技术 > Java第三天笔记

Java第三天笔记

2022年09月17日 09:53:53Java技术6

Unit3 Java数据类型 2021-10-25 周一

一、Java标识符?identifiers

  • 标识符就是名字。类名、属性名、方法名、变量名。
  • 标识符的命名规则:
    1. 首字符:_、$、字母(大小写都算)
    2. 其他:_、$、字母、数字(0-9)
  • 面试题:以下合法的标识符是哪些?ABCEDJ
    A. Test B. String C. True D. _ E. $ F. 12Test G. Hello World J. 学生
  • 补充:符合标识符命名规则且不是关键字,就可以当名字。
  • 补充:Java标识符长度有要求吗?最少一个字符,长度不限。
  • 补充:Java语言可以使用汉字当名字。因为Java语言采用的编码是Unicode编码,一个字符占2个字节,恰好能表示一个汉字。
    一个汉字占两个字节。

二、关键字 Keywords

  • 被编程语言本身保留的,有特殊含义
  • 我们不能用它做标识符
  • java关键字全小写
  • 面试题:goto和const是不是关键字?是,但不能使用。
  • true、false、null不在关键字列表里,是字面量,但也不能当名字。
  • 面试题:以下哪些是java语言关键字?DFG
    A. For B. System C. String D. false E. NULL F. goto G. const

三、变量

  • java中变量的分类:成员变量和局部变量
  • 变量:值是可以变的
  • 如何区分成员变量和局部变量?看定义的位置
  • 成员变量:直接放在类里面,也就是属性。
  • 局部变量:定义在方法的内部、形参、游离语句块。
  • 局部变量没有默认值,使用时必须明确赋值。
  • 当局部变量和属性同名,局部变量使用时会优先使用。

四、数据类型

  • java中数据类型分两类
    1. 基本类型(简单类型)8种
    2. 引用类型(复合类型)3种
  • 为什么编程语言提供多种数据类型?
    各种场景下需求不一样。
  • 基本类型
    1. boolean(布尔型),取值:true,false;
      在Java种不能使用非0数字和0表示布尔型。
      问题:长度多少?(一个字节是8位,二进制的)
      boolean长度不确定。
      主要用于:条件判断。
    2. byte(字节型)
    • 占内存长度?占一个字节,8位
    • 表示十进制数范围: -128 ~ 127
        byte age = 150;//错!
    
    1. short(短整形)
    • 占内存长度?2个字节,16位。
    • 表示的十进制数的范围: -32768 ~32767
    1. int(整型数)
    • 占内存长度?4个字节,32位。
    • 表示的十进制数的范围:
    • 整数常量默认类型是int,如:300、23等
    1. long(长整型)
    • 占内存长度?8个字节,64位。
    • 长整型加上L和l都可以,不加也可,但如果数值超出int的最大值了,L是必须的
    1. char(字符型)
    • 长度:2个字节,16位。
    • java使用的编码方式是:Unicode(在这种编码里,一个字符是两个字节,也就是16位)
    • 表示的数的范围是:0 ~ 65535、字符型数全是正数
    • 字符型数的本质是:整型数。A - 65 a - 97
    1. float(浮点数,小数)
    • 长度?4个字节,32位。
    • float型数末尾必加F或f。
    1. double(浮点数,小数)
    • 长度?8个字节,64位。
    • 常量小数默认类型:double:3.14、90.0等

五、引用类型(复合类型)

共有三种:类、数组、接口

六、基本数据类型转换

  • 由低级到高级:自动转换
  • 由高级到低级:强制转换
    byte -- short -- int -- long -- float -- double
    char
     double x = 98;//98是int型,相比double是低级类型,自动转换
     int y = 9.8;//错!
     int y = (int) 9.8;//强制类型转换,会造成精度的损失
     //因此不要在财务系统中,银行系统中使用
    

七、IDEA插件安装方式

  • 阿里巴巴代码规范插件

八、面试题

  • goto和const是不是关键字?答:是
  • 局部变量使用注意什么?答:局部变量的使用必须给它赋值,不然编译不通过
  • 局部变量有没有默认值?答:没有,成员变量才有默认值
  • java中能否用汉字当变量方法的名字?答:可以但是不推荐使用
  • float数据的f或F能不能省去?答:不能省去
  • java基本类型的转换规则是什么?答:低级类型转换成高级类型
    byte-short-int-long-float-double
    char
  • 简述java的GC机制 GC机制是java的垃圾回收机制,它能把在内存中的对象清除掉
  • 能否用System.gc()强迫JVM进行垃圾回收?答:不能
  • 内存的逻辑划分是哪些?各存贮什么? 答:栈内存和堆内存 它们分别存贮对象的内容存在的地址,和对象的内容
  • 基本类型和引用类型值传递的特点是什么? 答:基本类型传递的是值本身,引用类型传递的是该引用的地址

作者:大聪明_小蓝
来源链接:https://www.cnblogs.com/weijingge/p/15743818.html

版权声明:
1、JavaClub(https://www.javaclub.cn)以学习交流为目的,由作者投稿、网友推荐和小编整理收藏优秀的IT技术及相关内容,包括但不限于文字、图片、音频、视频、软件、程序等,其均来自互联网,本站不享有版权,版权归原作者所有。

2、本站提供的内容仅用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯相关权利人及本网站的合法权利。
3、本网站内容原作者如不愿意在本网站刊登内容,请及时通知本站(javaclubcn@163.com),我们将第一时间核实后及时予以删除。


本文链接:https://www.javaclub.cn/java/42416.html

标签: Java面试题
分享给朋友:

“Java第三天笔记” 的相关文章

Java高级面试题整理(附答案)

这是我收集的10道高级Java面试问题列表。这些问题主要来自 Java 核心部分 ,不涉及 Java EE 相关问题。你可能知道这些棘手的 Java 问题的答案,或者觉得这些不足以挑战你的 Java 知识,但这些问题都是容易在各种 Java 面试中被问到...

各大公司java后端开发面试题

ThreadLocal(线程变量副本)Synchronized实现内存共享,ThreadLocal为每个线程维护一个本地变量。采用空间换时间,它用于线程间的数据隔离,为每一个使用该变量的线程提供一个副本,每个线程都可以独立地改变自己的副本,而不会和其他线程的副本冲突。ThreadLoc...

互联网大厂Java面试题:使用无界队列的线程池会导致内存飙升吗?

互联网大厂Java面试题:使用无界队列的线程池会导致内存飙升吗?

引自:“ 石杉的架构笔记”公众号 (1)背景引入   今天跟大家聊一个互联网大厂的Java面试题:使用无界队列的线程池会导致内存飙升吗?   因为在面互联网大厂的时候,一定会问并发,问并发的时候一定会问到线程池,问到线程池一定...

15个Java线程并发面试题和答案(java高级)

15个Java线程并发面试题和答案(java高级)

15个Java线程并发面试题和答案(java高级) 面试Java开发者时常问的15个Java多线程和并发问题 1. 现在有线程 T1、T2 和 T3。你如何确保 T2 线程在 T1 之后执行,并且 T3 线程在 T2 之后执行? 这个线程面试题通常在第一轮面试或电话面试时被...

Java面试题_第四阶段

Java面试题_第四阶段

1.1 电商行业特点 1.分布式   垂直拆分:根据功能模块进行拆分   水平拆分:根据业务层级进行拆分 2.高并发      用户单位时间内访问服务器数量,是电商行业中面临的主要问题 3....

面试题_关于Java泛型的面试题

1. Java中的泛型是什么 ? 使用泛型的好处是什么? 这是在各种Java泛型面试中,一开场你就会被问到的问题中的一个,主要集中在初级和中级面试中。那些拥有Java1.4或更早版本的开发背景的人 都知道,在集合中存储对象并在使用前进行类型转换是多么的不方便。泛型防止...

java面试笔试题

1+2-3-4+5+6-7-8+9+10-11-12+13+14-15-16+17+18-19-20+21+22-23-24+25+26 请代码实现以上计算 作者:问题不大,礼多人不怪 来源链接:https://blog....

挑战10个最难回答的Java面试题(附答案)

挑战10个最难回答的Java面试题(附答案)

译者:Yujiaao segmentfault.com/a/1190000019962661 推荐阅读(点击即可跳转阅读) 1. SpringBoot内容聚合 2. 面试题内容聚合 3. 设计模式内容...

最新最全的Java面试题整理(内附答案)

最新最全的Java面试题整理(内附答案)

Java基础知识篇 面向对象和面向过程的区别 面向过程:   优点:性能比面向对象高,因为类调用时需要实例化,开销比较大,比较消耗资源;比如单片机、嵌入式开发、Linux/Unix等一般采用面向过程开发,性能是最重要的因素。...

尚学堂Java面试题整理

博客分类:  经典分享   1. super()与this()的差别? - 6 -  2. 作用域publ...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。