Java入门基础知识点整理大放送,推荐保存

为了方便大家学习Java,理顺Java技术知识点,也可以助您尽快的努力成长起来,小编整理了以下Java入门基础知识,一起来学习吧!

Java入门基础知识点整理大放送,推荐保存_第1张图片

一、概述

1991年Sun公司的James Gosling等人开始开发名称为 Oak 的语言,希望用于控制嵌入在有线电视交换盒、PDA等的微处理器;1994年将Oak语言更名为Java;James Gosling也被称为Java之父。

1、Java的三种技术架构体系:

(1)JAVAEE(Java Platform Enterprise Edition):企业版,开发企业环境下的应用程序,主要针对web程序开发;

(2)JAVASE(Java Platform Standard Edition):标准版,完成桌面应用程序的开发,是其它两者的基础;

(3)JAVAME(Java Platform Micro Edition):微型版,开发电子消费产品和嵌入式设备,如手机中的程序;在此我向大家推荐一个架构学习交流圈。交流学习指导伪鑫:1253431195(里面有大量的面试题及答案)里面会分享一些资深架构师录制的视频录像:有Spring,MyBatis,Netty源码分析,高并发、高性能、分布式、微服务架构的原理,JVM性能优化、分布式架构等这些成为架构师必备的知识体系。还能领取免费的学习资源,目前受益良多

2、javac命令和java命令

Java分为编译运行两个部分,其中:(1)javac负责的是编译的部分,当执行javac时,会启动java的编译器程序。对指定扩展名的.java文件进行编译。 生成了jvm可以识别的字节码文件。也就是class文件,也就是java的运行程序。

(2)Java:负责运行的部分.会启动jvm.加载运行时所需的类库,并对class文件进行执行。一个文件要被执行,必须要有一个执行的起始点,这个起始点就是main函数.

3、java可以做什么

(1)开发桌面应用程序。

(2)开发面向Internet的web应用程序。

(3)提供各行业的解决方案。

(4)开发android手机应用程序。

4、java的特性

(1)面向对象的编程语言;

(2)与平台无关的语言(根据JVM实现的);

(3)健壮性语言;

(4)较高的安全性。

5、java应用开发的6个要点

(1)一个源文件中只能有一个public修饰的类,其他类个数不限;

(2)一个源文件有n个类时,编译结果的class文件就有n个;

(3)源文件的名字必须和public修饰的类名相同;

(4)java语言中单词拼写大小写严格区分;

(5)main方法入口;

(6)每一句以分号(;)结束。

二、Java编程基础

1、标识符

(1)命名规则:由字母、下划线、数字和美元符号组成,不能以数字开头,区分大小写,不能是关键字和保留字(goto、const),长度一般不超过15个字符。

(2)驼峰式命名:

类名:单个单词,首字母大写,多个单词,首字母都大写。

方法名、参数名、变量名:单个单词,首字母小写,多个单词,第1单词首字母小写,其他单词首字母大写。

包名:全部小写。

2、四个基本数据类型划分:

整形:

byte 1个字节

short 2个字节

int 4个字节

long 8个字节

字符:

char 2个字节

浮点数:

float 4个字节

double 8个字节

布尔:

boolean 1个字节

引用类型:字符串String、 类 class 、枚举 enum、接口interface

3、二进制

(1)计算机中的数据都以二进制数据保存。

(2)计算机信息的存储单位:

位(bit):是计算机存储处理信息的最基本的单位

字节(byte):一个字节有8个位组成。

4、java中字符时16位的Unicode编码方式

格式是’\uXXXX’,其中xxxx代表一个十六进制整数

5、java中规定了正无穷大、负无穷大和零

正无穷大=一个正数除以0

负无穷大=一个负数除以零

0.0除以0.0 或者 对一个负数开方 得到一个非数

6、Java中带包的编译方法

javac -d . Hello.java会在当前目录下生成目录树,运行 java 包名字.类名字

7、 instance of 运算符

格式:引用变量名instance of类名(或者接口) 他用于判断前面的对象是否是后面对象的类,子类、实现类的实例,是返回true,否者返回false。

8、Java 中基本数据类型和对应封装类之间的转化

int a = 1; Integer A = new Integer(a); a = A.intValue();

其他的类型也是这样的。

9、抽象类和接口的区别

(1)abstract class在 Java 语言中表示的是一种继承关系,一个类只能使用一次继承关系。但是,一个类却可以实现多个interface。在此我向大家推荐一个架构学习交流圈。交流学习指导伪鑫:1253431195(里面有大量的面试题及答案)里面会分享一些资深架构师录制的视频录像:有Spring,MyBatis,Netty源码分析,高并发、高性能、分布式、微服务架构的原理,JVM性能优化、分布式架构等这些成为架构师必备的知识体系。还能领取免费的学习资源,目前受益良多

(2)在abstract class中可以有自己的数据成员,也可以有非abstarct的成员方法,而在interface中,只能够有静态的不能被修改的数据成员(也就是必须是static final的,不过在 interface中一般不定义数据成员),所有的成员方法都是abstract的。

(3)abstract class和interface所反映出的设计理念不同。其实abstract class表示的是"is-a"关系,interface表示的是"like-a"关系。

(4)实现抽象类和接口的类必须实现其中的所有方法。抽象类中可以有非抽象方法。接口中则不能有实现方法。

(5)接口中定义的变量默认是public static final型,且必须给其初值,所以实现类中不能重新定义,也不能改变其值。

(6)抽象类中的变量默认是friendly型,其值可以在子类中重新定义,也可以重新赋值。

(7)接口中的方法默认都是public,abstract类型的。

10、线程的四种状态

(1)新状态:线程已被创建但尚未执行(start()尚未被调用)。

(2)可执行状态:线程可以执行,虽然不一定正在执行。CPU时间随时可能被分配给该线程,从而使得它执行。

(3)死亡状态:正常情况下run()返回使得线程死亡。调用 stop()或 destroy() 亦有同样效果,但是不被推荐,前者会产生异常,后者是强制终止,不会释放锁。

(4)阻塞状态:线程不会被分配CPU时间,无法执行。

11、java中的7大运算符

(1)算术运算符:+、 - 、 * 、 / 、 % 、 ++ 、 –

(2)赋值运算符:=、 += 、 -= 、 *= 、 /= 、 %=

(3)关系运算符:>、 < 、 >= 、 <= 、 == 、 !=

(4)逻辑运算符:!、 & (只要有一个false 最终结果就是false) 、

|(但凡有一个true 最终结果就是true) 、

^(如果两边一样 最终结果为false 如果两边不同 最终结果为true)、

&&(如果第一个是false 那第二个不执行 最终结果是false)、

||(如果第一个表达式的结果是true 那第二个表达式 就不去计算了 ,最终结果是true)

(5)位运算符:~、 >> 、 << 、 >>>

(6)字符串连接运算符:+

(7)三目运算符:X ? Y : Z

X为boolean类型表达式,先计算x的值,若为true,整个三目运算的结果为表达式Y的值,否则整个运算结果为表达式Z的值。

12、java的5片内存

(1)寄存器;(2)本地方法区;(3)方法区;(4)栈;(5)堆。

栈:存储的都是局部变量(函数中定义的变量,函数上的参数,语句中的变量 );

只要数据运算完成所在的区域结束,该数据就会被释放。

堆:用于存储数组和对象,也就是实体。实体就是用于封装多个数据的。每一个实体都有内存首地址值。

堆内存中的变量都有默认初始化值。因为数据类型不同,值也不一样。

垃圾回收机制。

三、面向对象:

1、面向的特点:

(1)将复杂的事情简单化。

(2)面向对象将以前的过程中的执行者,变成了指挥者。

(3)面向对象这种思想是符合现在人们思考习惯的一种思想。

2、面向对象和面向过程

1、面向对象:是以具体的事物为单位,考虑的是它的特征(属性)和行为(方法)。

2、面向过程:是以具体的流程为单位,考虑功能的实现。

3、类和对象

(1)对象:看得见摸得着的具体事物。

类:抽象化的概念

(2)类和对象的关系:

类是对象的模板/抽象化的概念,对象是类的实例。

3)创建类和对象

类:

特征:全局变量/属性/成员变量

动作:方法

对象:

类名对象名=new类名()

注意:一个类可以创建多个对象,,每个对象之间没有关系。

4、面向对象特征之封装

封装是指隐藏对象的属性和实现细节,仅对外提供公共访问方式。

封装原则:将不需要对外提供的内容都隐藏起来,把属性都隐藏,提供公共方法对其访问。

5、This:

代表对象,就是所在函数所属对象的引用。

哪个对象调用了this所在的函数,this就代表哪个对象,就是哪个对象的引用。在此我向大家推荐一个架构学习交流圈。交流学习指导伪鑫:1253431195(里面有大量的面试题及答案)里面会分享一些资深架构师录制的视频录像:有Spring,MyBatis,Netty源码分析,高并发、高性能、分布式、微服务架构的原理,JVM性能优化、分布式架构等这些成为架构师必备的知识体系。还能领取免费的学习资源,目前受益良多

在定义功能时,如果该功能内部使用到了调用该功能的对象,这时就用this来表示这个对象。

this还可以用于构造函数间的调用。

调用格式:this(实际参数);

this对象后面跟上 . 调用的是成员属性和成员方法(一般方法);

this对象后面跟上 () 调用的是本类中的对应参数的构造函数。

6、面向对象特征之继承

父类的由来:其实是由多个类不断向上抽取共性内容而来的。

java中对于继承,java只支持单继承。java虽然不直接支持多继承,但是保留了这种多继承机制,进行改良。

单继承:一个类只能有一个父类。

多继承:一个类可以有多个父类。

不支持多继承的原因:当一个类同时继承两个父类时,两个父类中有相同的功能,那么子类对象调用该功能时,运行哪一个呢?因为父类中的方法中存在方法体。

但是java支持多重继承。A继承B B继承C C继承D。

多重继承的出现,就有了继承体系。体系中的顶层父类是通过不断向上抽取而来的。它里面定义的该体系最基本最共性内容的功能。

以上就是小编整理的Java入门学习基础知识点,希望这篇文章能够对学习Java的小伙伴一些参考和帮助~

你可能感兴趣的:(java,java-ee,面试,spring,架构)