100条必背JAVA知识点,你都掌握了吗?(上)

Java知识点汇总 持续更新中~~~ 本文详细总结了面试java开发工程师的过程中容易被问的面试题,内容详细很精,堪称Java八股文 阅读详情

为了便于大家学习,本文整理分享一下100条初学者必背的Java知识点。由于篇幅过长,首先分享前50条,干货满满,建议先收藏哦~

1.编写:编写的Java代码保存在以“.java”结尾的源文件中。

2.编译:使用javac.exe命令编译java源文件,生成字节码文件。格式:javac 源文件名.java

3.运行:使用java.exe命令解释运行字节码文件。格式:java 类名

4.在一个java源文件中可以声明多个class,但是只能最多有一个类声明为public,而且被声明为public的类的类名必须与源文件名相同。

5.java关键字中所有字母都为小写

6.Java中的名称命名规范:包名:多单词组成时所有字母都小写:xxxyyyzzz 类名、接口名:多单词组成时,所有单词的首字母大写:XxxYyyZzz变量名、方法名:多单词组成时,第一个单词首字母小写,第二个单词开始每个 单词首字母大写:xxxYyyZzz常量名:所有字母都大写。多单词时每个单词用下划线连接:XXX_YYY_ZZZ

7.字符串是属于一个类,属于引用数据类型8.在类体内,在方法体外声明的变量称为成员变量。

 

8.在类体内,在方法体外声明的变量称为成员变量。

9.在方法体内部声明的变量称为局部变量。局部变量除形参外,需显式初始化才能使用。(形参也是局部变量)

10.java的整型常量默认为 int 型,声明long型常量须后加‘l’或‘L’。

11.Java的浮点型常量默认为double型,声明float型常量,须后加‘f’或‘F’。

12.Java中的所有字符都使用Unicode编码,一个字符可以存储一个字母,一个汉字,所以java中char类型是两个字节。

13.boolean类型数据只允许取值true和false,无null。不可以使用0或非 0 的整数替代false和true。Java虚拟机中没有任何供boolean值专用的字节码指令,Java语言表达所操作的 boolean值,在编译之后都使用java虚拟机中的int数据类型来代替:true用1表示,false 用0表示。

14.虽然long类型是8个字节,float是4个字节,但是float类型采用科学计数法存储,所以float类型的存储范围比long类型更大。

 

15.自动类型转换:容量小的类型自动转换为容量大的数据类型。byte,short,char之间不会相互转换,他们三者在计算时首先转换为int类型。

 

16.强制类型转换:将容量大的数据类型转换为容量小的数据类型,但可能造成精度降低或溢出。

17.字符串不能直接转换为基本类型,但通过基本类型对应的包装类则可以实现把字符串转换成基本类型。

18.计算机底层都以二进制补码的方式来存储数据。

19.正数(最高位是0)的原码、反码、补码都相同,负数(最高位是1)的补码是其反码+1。

20.赋值运算符:= += -= *= /= %=,运算的结果不会改变变量本身的数据类型。short i = i + 1;由于常量“1”默认是int型的,所以编译会报错,使用short i += 1,则做到了+1的作用,也没有改变数据类型。

21.&与&&、| 与 | | 的区别:&&、| | 具备短路功能,左边的条件成立或者不成立,右边的条件不用再判断,&、| 不管什么情况,都要把所有条件判断完。

22.位运算:位运算符操作的都是整型的数据。(左移运算符)<< :在一定范围内,每向左移1位,相当于 * 2(右移运算符)>> :在一定范围内,每向右移1位,相当于 / 2

 

23.流程控制:顺序结构:程序从上到下执行。分支结构:if - else、switch-case循环结构:for、while、do-while

24.数组属于引用数据类型变量,但是数组的元素既可以是基本数据类型,也可以是引用数据类型。

25.数组的长度一旦确定就不能修改,初始化完成,长度就定了。

26.数组静态初始化:数组元素的初始化和数组元素的赋值同时进行。例如:int a[ ] = new int [ ] { 1,2,3 };

27.数组动态初始化:数组元素的初始化和数组元素的赋值分开进行。例如:int b[ ] = new int [5]; b[0] = 1 ;

28.数组元素的默认初始化值:整型:0浮点型:0.0字符型:0或者’\u0000’,而非’0’布尔类型:false引用数据类型:null

29.关键字 break、continue 可以带标签使用(类似于C语言的goto语句)break label;//结束指定标识的一层循环结构。continue label;//结束指定标识的一层循环结构当次循环。

30.面向对象vs面向过程面向过程:强调的是功能行为,以函数为最小单位,考虑怎么做。面向对象:强调具备了功能的对象,以类/对象为最小单位,考虑谁来做。

31.面向对象中两个重要的概念:类:对一类事物的描述,是抽象的、概念上的定义对象:是实际存在的该类事物的每个个体,因而也称为实例(instance)

32.虚拟机栈,即为平时提到的栈结构。局部变量存储在栈结构中;new出来的结构(比如:数组、对象)加载在堆空间中。

补充:对象的属性(非static的成员变量)也是加载在堆空间中。int arr [ ] = new arr [ ],以等号“=”为界,左边是局部变量存放在栈,右边是new 的机构,存放在堆中。

方法区:类的加载信息、常量池、静态域

 

 

33.“属性”与“变量”的区别:

① 在类中声明的位置的不同属性:

直接定义在类的一对{}内。局部变量:声明在方法内、方法形参、代码块内、构造器形参、构造器内部的变量。

② 关于权限修饰符的不同属性:

可以在声明属性时,指明其权限,使用权限修饰符。常用的权限修饰符:private、public、缺省、protected —>体现为封装性。局部变量:不可以使用权限修饰符。

③ 默认初始化值的情况属性:

类的属性,根据其类型,都默认初始化值。整型(byte、short、int、long:0)、浮点型(float、double:0.0)、字符型(char:0 (或’\u0000’))、布尔型(boolean:false)、引用数据类型(类、数组、接口:null)局部变量:没默认初始化值。意味着,我们在调用局部变量之前,一定要显式赋值。特别地:形参在调用时,我们赋值即可。

④在内存中加载的位置属性:

加载到堆空间中 (非static)。局部变量:加载到栈空间。

34.如果方法没返回值,“return;”表示结束此方法的意思。

35.封装性思想具体的代码体现:

 

36.权限修饰符的范围:

 

37.4种权限都可以用来修饰类的内部结构:属性、方法、构造器、内部类。修饰类的话,只能使用:缺省、public。

38.如果没显式的定义类的构造器的话,则系统默认提供一个空参的构造器。

39.一个类中定义的多个构造器,彼此构成重载。

40.一旦我们显式的定义了类的构造器之后,系统就不再提供默认的空参构造器。

41.一个类中,至少会有一个构造器。

42.this可以理解为:当前对象或当前正在创建的对象。

43.可以显式的使用"this(形参列表)"方式,调用本类中指定的其他构造器,但是构造器中不能通过"this(形参列表)"方式调用自己(死循环)。

44.规定:"this(形参列表)“必须声明在当前构造器的首行,可以推出构造器内部,最多只能声明一个"this(形参列表)”,用来调用其他的构造器。

45.如果使用的类或接口是java.lang包下定义的,则可以省略import结构。使用"xxx.*"方式表明可以调用xxx包下的所有结构。但是如果使用的是xxx子包下的结构,则仍需要显式导入。

46.一个类可以被多个子类继承(一个爸爸可以有多个儿子),但是一个类只能有一个父类(一个儿子只能有一个亲生爸爸)

47.子类继承父类以后有哪些不同?一旦子类A继承父类B以后,子类A中就获取了父类B中声明的所有的属性和方法。特别的,父类中声明为private的属性或方法,子类继承父类以后,仍然是获取了父类中私的结构,只因为封装性(private权限修饰符)的影响,使得子类不能直接调用父类的结构而已。子类继承父类以后,还可以声明自己特有的属性或方法:实现功能的拓展。

48.子类直接继承的父类,称为:直接父类。间接继承的父类称为:间接父类。子类继承父类以后,就获取了直接父类以及所有间接父类中声明的属性和方法。

49.如果没有显式的声明一个类的父类的话,则此类继承于java.lang.Object类。

50.方法的重写(override 或 overwrite)。

子类继承父类以后,可以对父类中同名同参数的方法,进行覆盖操作。

Java入门基础知识点总结(详细篇) Java入门基础知识点总结(详细篇)~~~~~目录1.1 图解1.1.1 Java基础知识点1.1.2 Java基础语法的相关内容1.2 关键字1.3 标识符1.3.1 标识符概念1.3.2 定义标识符的合法规则1.3.3 Java中的一些命名规范1.4 变量1.4.1 变量的分类1.4.2 整数类型1.4.3 浮点类型1.4.4 字符类型char1.4.5 布尔类型boolean1.5 ASci... 阅读详情

相关推荐

6、Java——常用小技巧总结

一、常用快捷键 二、常用小功能 1、Scanner类;2、equals使用;3、随机数Math.random()用法;4、Math函数—算数计算;5、Math函数—进位

不迁怒,不贰过。小知识,大智慧。 2600

java基础知识点

🏆作者简介:哪吒,CSDN2022博客之星Top1、CSDN2021博客之星Top2、多届新星计划导师✌、博客专家💪,专注Java硬核干货分享,立志做到Java赛道全网Top N。🏆本文收录于,,目前已经700+订阅,CSDN最强Java专栏,包含全部Java基础知识点Java8新特性、Java集合、Java多线程、Java代码实例,理论结合实战,实现Java的轻松学习。🏆姐妹篇,,包含面向对象、基本数据类型、数组、继承和多态、泛型、枚举等Java基础知识点。🏆姐妹进阶篇,

学Java,找哪吒 2万+

麒麟系统无法进入单用户模式该怎么办?

🏆本文收录于《全栈Bug调优(实战版)》专栏,主要记录项目实战过程中所遇到的Bug或因后果及提供真实有效的解决方案,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!! 备注:部分问题/疑难杂症搜集于互联网。

**My Coding Family** 1776

JAVA基础知识点总结

Java 是一门面向对象的编程语言。 语言特点:面向对象,平台无关性,支持多线程,编译与解释并存JVMJava Virtual Machine,Java 虚拟机。 JRE: Java 运⾏时环境。 JDK: Java Development Kit,它是功能⻬全的 Java SDK。 JDK 包含 JRE,JRE 包含 JVMJava 程序从源代码到运行主要有三步: 编译:将我们的代码(.java)编译成虚拟机可以识别理解的字节码(.class) 解释:虚拟机执行 Java 字节码,将字节码翻译成机器能

sen_sen97的博客 1万+

Java入门100

Java100 1、编写:编写的Java代码保存在以“.java”结尾的源文件中。 2、编译:使用javac.exe命令编译java源文件,生成字节码文件。格式:javac 源文件名.java 3、运行:使用java.exe命令解释运行字节码文件。格式:java 类名 4、在一个java源文件中可以声明多个class,但是只能最多有一个类声明为public,而且被声明为public的类的...

野生的程序员 1万+

来了来了,100JAVA知识点(下)

throws的方式只是将异常抛给了方法的调用者。③如果子类(或实现类)继承的父类和实现的接口中,声明了同名同参数的默认方法,那么子类在没重写此方法的情况下,默认调用的是父类中的同名同参数的方法。③特殊情况当子类重写了父类中的方法以后,想在子类的方法中调用父类中被重写的方法时,则须显式的使用"super.方法"的方式,表明调用的是父类中被重写的方法。②特殊情况当子类和父类中定义了同名的属性时,要想在子类中调用父类中声明的属性,则须显式的使用"super.属性"的方式,表明调用的是父类中声明的属性。...

Gemcoder的博客 487

java list 前100个_实现java 中 list集合中有几十万数据,每100为一组取出

解决“java 中 list集合中有几十万数据,每100为一组取出来如何实现,求代码!!!”的问题。具体解决方案如下:/*** 实现java 中 list集合中有几十万数据,每100为一组取出* @param list 可穿入几十万数据的List* @return map 每一Kye中有100数据的List*/@SuppressWarnings({ "unchecked", "rawt...

weixin_42644410的博客 4450

java综合知识点总结

一、代码优化代码结构层次的优化(目的:更加方便代码的维护–可维护性,可读性)1.代码注释(代码规范)2.工具类的封装(方便代码的维护,使代码结构更加清晰不臃肿,保证团队里代码 质量一致性)3.公共部分的提取代码性能的优化(目的:使程序的性能最优化)1.使用一些性能比较高的类(bufferInputStream)2.缓冲区块的大小(4k或者8k)3.公共部分的提取4.通常要用stringbuffer替代string加号拼接二、业务优化我们做项目的时候业务优化这方面最主要是从用户体验度角度进行考虑,减少用户操

2301_76965813的博客 867

100java面试题目(基础理论 + 工程实践篇)

Java面试核心知识点摘要 本文整理了Java面试100道重要题目,分为基础理论和工程实践两大部分。基础理论篇涵盖Java核心基础、面向对象和集合框架三大模块,包括JDK/JRE/JVM区别、==与equals()的差异、String三兄弟对比、接口与抽象类区别等核心概念。工程实践篇则聚焦多线程、JVM、设计模式和框架等实际开发问题。文章通过对比表格、代码示例和清晰分类,帮助面试者系统掌握Java知识体系,针对高频考点如集合框架、OOP特性、并发编程等提供深入解析,是Java开发者面试准备的实用指南。

THMAIL的博客 825

java中 list集合中有几十万数据,每100为一组取出

java中 list集合中有几十万数据,每100为一组取出

weixin_42326851的博客 5296

Java进阶100(一)

Java进阶 1、线程使用的三个概念 ①程序(programm):是为完成特定任务、用某种语言编写的一组指令的集合。即指一段静态的代码。 ②进程(process):程序的一次执行过程,或是正在运行的一个程序。说明:进程作为资源分配的单位,系统在运行时会为每个进程分配不同的内存区域。 ③线程(thread):进程可进一步细化为线程,是一个程序内部的一执行路径。 2、每个线程,拥有自己独...

野生的程序员 563

python100知识-学Python的初级单词,你都了吗?

今天给大家分享一些学习Python须认识的英文单词,同时也是学习编程都须会的单词,新手赶快学起来!有点长耐心看完application 应用程式 应用、应用程序application framework 应用程式框架、应用框架 应用程序框架architecture 架构、系统架构 体系结构argument 引数(传给函式的值)。叁见 parameter 叁数、实质叁数、实叁、自变量array ...

weixin_37988176的博客 1737

蓝桥杯上岸模板 (纯享版)

蓝桥杯上岸模板 (纯享版)

寸铁的博客 909

实现java 中 list集合中有几十万数据,每100为一组取出

/**      * 实现java 中 list集合中有几十万数据,每100为一组取出      * @param list 可穿入几十万数据的List      * @return map 每一Kye中有100数据的List      */     @SuppressWarnings({ "unchecked", "rawtypes" })     public Map groupLis...

javasoftdeveloper的博客 2万+

Java 程序员备的 100 Linux 命令大全[超全整理]

1. **基础命令**:先掌握`ls`、`cd`、`mkdir`、`rm`、`grep`等日常高频命令 2. **Java开发**:重点熟悉`jps`、`jstat`、`jstack`、`java`等JDK工具 3. **运维备**:掌握`ps`、`top`、`netstat`、`systemctl`等系统管理命令 4. **实践为主**:通过实际项目练习,遇到问题时查阅对应命令参数

博客 1985

java综合知识点总结(优化篇)

优化篇 一、代码优化 代码结构层次的优化(目的:更加方便代码的维护–可维护性,可读性) 1.代码注释(代码规范) 2.工具类的封装(方便代码的维护,使代码结构更加清晰不臃肿,保证团队里代码 质量一致性) 3.公共部分的提取 代码性能的优化(目的:使程序的性能最优化) 1.使用一些性能比较高的类(bufferInputStream) 2.缓冲区块的大小(4k或者8k) 3.公共部分的提取...

kai46385076的专栏 535

使用微信小程序开发制作一个简单的在线问答应用

以上就是一个简单的在线问答小程序的开发过程。其中包括前端界面的布局和逻辑,后端接口的设计和实现,以及部署和测试的步骤。通过以上步骤,你可以自己尝试开发一个类似的在线问答应用。

2401_85258012的博客 772

在线考试答题系统 本系统可以应用于考试,答题,刷题,知识竞赛,活动答题,题库等场景,满足各种答题刷题的使用

在线考试答题系统。本系统可以应用于考试,答题,刷题,知识竞赛,活动答题,题库等场景,满足各种答题刷题的使用

上一篇: 全面解读数据中台,让企业实现数字化转型
下一篇: 来了来了,100条必背JAVA知识点(下)
捷码小编
博客等级 码龄5年 395粉丝 255原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

捷码小编

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值