ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

java基础知识(一)

2022-04-11 15:03:20  阅读:152  来源: 互联网

标签:Java 字节 局部变量 数据类型 基础知识 类型 java 变量


1.1 为什么Java代码可以实现一次编写、到处运行?

  • 跨平台的是Java程序,JVM是跨平台的关键
  • 在程序运行前,Java程序需要经过编译器编译为字节码文件,在程序运行时,JVM会将字节码文件翻译为机器语言并运行
  • java程序只需经过一次编译,然后在不同平台下安装对应版本的JVM,就能将字节码文件翻译成特定平台下的机器语言并运行

1.2 一个Java文件里可以有多个类吗(不含内部类)?

  • 一个Java文件中可以包含多个类,但最多只能有一个类被public修饰
  • 如果这个类中包含被public修饰的类,则这个类必须与Java文件同名

1.3 说一说你对Java访问权限的了解

java语言中有四种访问修饰符,public protected default private 。不加修饰符时默认是default

  • public可以被任何包下的任何类访问
  • protected可以被同一包及其他包下的子类访问
  • default可以被同一包下的类访问
  • private只能被本类访问

1.4 介绍一下Java的数据类型

Java数据类型分为基本数据类型和引用类型两种

基本数据类型分为四大类八小类,分别是整数类型(byte/short/int/long)、浮点类型(float/double)、字符类型(char)、布尔类型(boolean)

  • byte 1字节 8位
  • short 2字节 16位
  • int  4字节 32位
  • long 8字节 64位
  • float 4字节 32位
  • double 8字节 64位
  • char 2字节 16位
  • boolean

引用类型就是对一个对象的引用

1.5 int类型的数据范围是多少?

int类型占4字节32位,-2^31~2^31-1

1.6 请介绍全局变量和局部变量的区别

java中的变量分为成员变量和局部变量

成员变量:

  1. 成员变量是在类范围内定义的变量
  2. 成员变量有默认初始值
  3. 被static修饰的成员变量也叫静态成员变量,它存储于方法区中,生命周期与当前类相同
  4. 未被static修饰的成员变量叫实例成员变量,它存储在对象所在的堆内存中,生命周期与对象相同

局部变量:

  1. 局部变量是在方法内定义的变量

  2. 局部变量没有初始值
  3. 局部变量存储与栈内存,作用的范围结束,变量空间会自动释放

1.7 请介绍一下实例变量的默认值

实例变量若为引用数据类型,其默认值一律为null。若为基本数据类型,其默认值如下:

  • byte:0

  • short:0

  • int:0

  • long:0L

  • float:0.0F

  • double:0.0

  • char:'\u0000'

  • boolean:false

1.8 为啥要有包装类?

Java语言是面向对象的语言,其设计理念是一切皆对象,但8种基本数据类型却不具备对象的特征,所以为8种基本数据类型都定义了引用类型,即包装类

1.9 说一说自动装箱、自动拆箱的应用场景

  • 自动装箱:基本数据类型自动转换为对应包装类型
  • 自动拆箱:包装类型自动转换为对应基本数据类型

1.10 如何对Integer和Double类型判断相等?

  • 不能直接用==比较,因为他们不是同一数据类型
  • 不能转为字符串比较,浮点数带小数
  • 以将Integer、Double先转为转换为相同的基本数据类型(如double),然后使用==进行比较。

标签:Java,字节,局部变量,数据类型,基础知识,类型,java,变量
来源: https://www.cnblogs.com/yxhh/p/16129987.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有