Java基础部分知识点(初稿)
1、一个“.java”源文件是否可以包括多个类(不是内部类)?有什么限制?
.java 源文件中可以有多个类,但只能有一个 public 的类,并且 public 的类名必须与文件相一致
2、Java 有没有 goto?
goto 为 Java 中保留字,现在没有在 java 中使用
3、& 和 && 的区别
- & 和 &&:都可以作为逻辑与运算,表示逻辑与(and)。
- &&:具备短路功能(第一个表达式为 false 后,不会计算第二个表达式)。
- &:可以用作位运算符。当 & 两边的表达式不为 boolean 类型时,会进行按位与操作。
4、Java 中跳出多重嵌套循环
5、switch 语句能否作用在 byte 上,能否作用在 long 上,能否作用在 String 上?
- switch(参数):只能是一整数表达式或枚举常量。
- byte,shout,char 可以隐式转换为 int,可作为参数
- long 和 String 不能隐式转换为 int 类型,不可作为参数
注:题意为,swith 参数中能否直接写入非 int 型变量
6、 short s1 = 1;s1 = s1 + 1; 有什么错? short s1=1;s1 +=1; 有什么错?
- s1 + 1; 运算时会自动转换成 int 类型,即结果为 int 型。int 型赋值给 short 型,需要强制转换,不然报错。
- s1 +=1; 是 java 语言规定的运算符,java 编译器会对它进行特殊处理,因此可以正确编译。
7、char 型变量中能不能存贮一个中文汉字?为什么?
可以。char 用来存储 Unicode 编码的字符, Unicode 编码字符中包含了汉字
注:unicode 编码占两个字节,char 类型也占两个字节
8、某个数乘以 2 的 n 次数,最有效的操作方式
位运算( << ):一个数左移 n 位,相当该数乘以了 2 的 n 次方,位运算 cpu 直接支持,效率最高
9、设计一个百亿的计算器
- 计算机进行算术运算时会发生越界的情况
- 两个数值的运算结果不能超过计算机中的该类型的数值范围
- 自定义一个类用来表示很大的整数,提供与另一个整数进行加减乘除的功能方法。
- 两个成员变量:符号、字节数组(存储该数的二进制数)
- 构造方法中完成对成员变量的赋值
10、final 关键字修饰变量时,是引用不能变,还是引用的对象不能变?
- final 修饰变量时,是指引用变量不能变,引用变量所指向的对象中的内容还是可以改变的。
- final 修饰 StringBuffer 后。StringBuffer 对象依旧可以通过 对象点 append() 方法,修改内容
11、== / equals 方法有什么区别
- ==:用来比较两个变量的值是否相等,即比较变量所对应的内存中所存储的数值是否相同。
- 基本数据或引用变量之间的比较用 ==
- equals:比较堆内容中保存的内容是否一致
- 一个类没有重写 equals 方法,那么默认的 equals 方法就是 == 操作符
12、静态变量 / 实例变量 的区别
- 静态变量(类变量): static 关键字修饰,属于类。可以直接用类名来引用。只要类的字节码(.class文件)被程序加载,静态变量即会被分配空间
- 实例变量:属于对象的属性。对象被实例化后实例变量才会被分配空间,通过对象才可调用实例变量
13、是否可以从一个 static 方法内部发出对非 static 方法的调用?
- 不可以
- 非 static 方法是要与对象关联在一起的,必须创建一个对象后,才可以通过对象进行调用
- 而 static 方法调用时不需要创建对象,可以直接调用。
- 如果从一个 static 方法中发出对非 static 方法的调用,非 static 无法关联对象,所以无法调用
14、Integer 与 int 的区别
- int 是8种原始数据类型之一。
- Integer 是 java 为 int 提供的封闭类
- int 默认值为 0,Integer 默认值为 null
- 所以 Integer 可以通过值来判断该数据是否有修改添加过
Java基础部分知识点(初稿)的更多相关文章
- Java 基础常见知识点&面试题总结(中),2022 最新版!| JavaGuide
你好,我是 Guide.秋招即将到来,我对 JavaGuide 的内容进行了重构完善,公众号同步一下最新更新,希望能够帮助你. 上篇:Java 基础常见知识点&面试题总结(上),2022 最新 ...
- Java 基础常见知识点&面试题总结(下),2022 最新版!
你好,我是 Guide.秋招即将到来,我对 JavaGuide 的内容进行了重构完善,同步一下最新更新,希望能够帮助你. 前两篇: Java 基础常见知识点&面试题总结(上),2022 最新版 ...
- Java基础面试知识点总结
微信公众号[程序员江湖] 作者黄小斜,斜杠青年,某985硕士,阿里 Java 研发工程师,于 2018 年秋招拿到 BAT 头条.网易.滴滴等 8 个大厂 offer,目前致力于分享这几年的学习经验. ...
- java基础 小知识点汇总篇
1.&和&& |和|| 的区别? a&b,会执行a,执行b ,得出结论 a&&b,会执行a,如果a false,则不执行b,直接返回false 2.Ma ...
- Java 基础常见知识点&面试题总结(上),2022 最新版!| JavaGuide
你好,我是 Guide.秋招即将到来,我对 JavaGuide 的内容进行了重构完善,公众号同步一下最新更新,希望能够帮助你. 基础概念与常识 Java 语言有哪些特点? 简单易学: 面向对象(封装, ...
- Java基础重要知识点-反射
反射,如何把.java文件转化为.class文件 JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法:对于任意一个对象,都能够调用它的任意一个方法和属性:这种动态获取的信 ...
- Java 集合常见知识点&面试题总结(上),2022 最新版!
你好,我是 Guide.秋招即将到来(提前批已经开始),我对 JavaGuide 的内容进行了重构完善,公众号同步一下最新更新,希望能够帮助你. 你也可以在网站(javaguide.cn)上在线阅读, ...
- Java基础知识点
以下10点为JAVA 基础知识,后面将足以总结和完善以备面试 数据类型 (包装类,字符串,数组) 异常处理 Java IO和NIO 数据结构 (集合和容器 ) 多线程(并发) 网络通信(协议) 面向对 ...
- Java最重要的21个技术点和知识点之JAVA基础
(一)Java最重要的21个技术点和知识点之JAVA基础 写这篇文章的目的是想总结一下自己这么多年JAVA培训的一些心得体会,主要是和一些java基础知识点相关的,所以也希望能分享给刚刚入门的Ja ...
随机推荐
- 【原创】(十二)Linux内存管理之vmap与vmalloc
背景 Read the fucking source code! --By 鲁迅 A picture is worth a thousand words. --By 高尔基 说明: Kernel版本: ...
- win到linux的编码问题
从windows到linux的文件可能存在编码问题时,这是因为,Linux和Windows文本文件的行结束标志不同.在Linux中,文本文件用"\n"表示回车换行,而Windows ...
- CCNA 之 十三 广域网概述
广域网概述 为什么需要WAN ? 分区或分支机构的员工需要与总部通信并共享数据: 组织经常需要与其他组织远距离共享信息: 经常出差的员工需要访问公司网络信息: 什么事广域网链路? 用于连接LAN的.跨 ...
- LNMP Shell脚本发布
#!/bin/bash # : #This author is DKS #auto install nginx mysql php ################################## ...
- Mysql密码忘记怎么修改?
做开发的过程中多少会用到MySQL数据库,所以忘记密码也就成为一些马虎的同学的家常便饭了,今天发布一个忘记MySQL密码如何修改的文章作为记录. 1>首先将MySQL的服务关闭,两种方法:1,打 ...
- 【游记】CSP J/S 2019 游记
J 组 \(2:30\)开始, \(2:13\)还在酒店的我看了看手表...飞奔考场. T1 数字游戏 秒切. 下午某中学某大佬说可用线性基(%) T2 公交换乘 用单调队列思想,秒切. T3 纪念品 ...
- 配置aria2
Mac 用户肯定都受够了百度网盘在自己电脑上的糟糕体验,至少我是如此:安装官方的 App,经常下载时中断,有时甚至 Bug 般连续中断,无奈使用浏览器下载,速度却是令人挠头.花点时间来配置 aria2 ...
- 了解 MongoDB 看这一篇就够了【华为云技术分享】
版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/devcloud/article/detai ...
- Python装饰器总结,带你几步跨越此坑!
欢迎添加华为云小助手微信(微信号:HWCloud002 或 HWCloud003),输入关键字"加群",加入华为云线上技术讨论群:输入关键字"最新活动",获取华 ...
- SpringBoot-HelloWorld(三)
HelloWorld 学一个新的框架,不写helloworld是没有灵魂的,嘿嘿 准备工作 我们将学习如何快速的创建一个Spring Boot应用,并且实现一个简单的Http请求处理.通过这个例子对S ...