java基础

1 Java起源与演变
1.1 起源
SUN公司为了抢占市场先机, 在 1991 年成立了一个由詹姆斯·高斯林(James Gosling) 领导,名为“Green”项目小组, 目的是开发一种能够在各种消费性电子产品上运行的程序架构。
1994 年, 项目小组将 OaK 应用于万维网。 1995 年,OaK正式更名为 Java。
1.2 演变
版本变化:

  1. 1996年JDK1.0(开发工具和运行环境),代表:Java 虚拟机、 Applet、 AWT 等。
  2. 1997 年 2 月, SUN 公司推出了 JDK 1.1,代表性技术有: JDBC、 JavaBeans、 RMI、 JAR 文件格式、 Java 语法中的内部类和反射。
  3. 1998 年 12 月 8 日, JDK1.2——第二代 Java 平台的企业版 J2EE 发布。
  4. 1999 年 6 月, Sun 公司把 Java 体系分为三个方向:J2ME(Java2 Micro Edition, Java2 平台的微型版) , 应用于移动、 无线及有限资源的环境;J2SE(Java 2 Standard Edition, Java 2 平台的标准版) , 应用于桌面环境;J2EE(Java 2Enterprise Edition, Java 2 平台的企业版) , 应用于基于 Java 的应用服务器。Java 2 平台的发布, 是 Java 发展过程中最重要的一个里程碑, 标志着 Java 的应用开始普及。
  5. 2000 年 5 月, JDK1.3、 JDK1.4 和 J2SE1.3 相继发布。
  6. 2018 年 9 月 26 日, Java SE 11 发布。 这是 Java 大版本周期变化后的第一个长期支持版本(LTS版本持续支持到 2026 年 9 月)。
    2. Java 体系与特点
    2.1 体系
    Java SE: Java Platform, Standard Edition
    标准版: 各应用平台的基础, 桌面开发(软件)和低端商务应用的解决方案。

Java EE: Java Platform, Enterprise Edition
企业版: 以企业为环境而开发应用程序的解决方案

Java ME : Java Platform, Micro Edition
微型版: 致力于消费产品 和嵌入式设备的最佳解决方案
2.2 特点
 一种纯面向对象的编程语言。
 一种与平台无关(跨平台) 的语言。 (它提供了在不同平台下运行的解释环境)
 一种健壮的语言, 吸收了 C/C++语言的优点。
 有较高的安全性。 (自动回收垃圾, 强制类型检查, 取消指针)
3 Java跨平台原理
跨越win7、win10、Linux等操作平台,使用Java虚拟机(万能翻译机)进行跨平台。
在这里插入图片描述

3.2 Java虚拟机(JVM)
在这里插入图片描述

JVM 可以理解成一个可运行 Java 字节码的虚拟计算机系统。
 它有一个解释器组件, 可以实现 Java 字节码和计算机操作系统之间的通信。
 对于不同的运行平台(Windows、Linux), 有不同 的 JVM。

3.3 垃圾回收器(GC)
 不再使用的内存空间应当进行回收-垃圾回收。
 在 C/C++等语言中, 由程序员负责回收无用内存;Java 语言消除了程序员回收无用内存空间的责任。
 JVM 提供了一种系统线程跟踪存储空间的分配情况。 并在 JVM 的空闲时, 检查并释放那些可以被释放的存储空间。
 垃圾回收器在 Java 程序运行过程中自动启用, 程序员无法精确控制和干预。
3.4 Java SE 的组成概念图
在这里插入图片描述

JDK:开发工具集
JRE:运行程序的工具
3.5 JDK
JDK(开发工具集)包含JRE和API(应用程序编程接口)
JRE 的三项主要功能:
 加载代码: 由类加载器(class loader)完成;
 校验代码: 由字节码校验器(byte code verifier)完成;
 执行代码: 由运行时解释器(runtime interpreter)完成。
3.6 JDK下载安装
Oracle官网——Java——Java11(持续更新版本)
安装
环境配置(计算机右键-高级系统配置)
3.7 环境变量的含义
鱼依赖水,计算机中对指令执行提供的更方便的执行方式。
配置环境变量将程序文件的指令在cmd中作为外部指令执行。
将路径文件中的程序在cmd中作为外部指令执行。
Java环境变量的合理配置:系统变量增加一个Java_home(C:\Program Files\Java\jdk-11.0.6),当环境变量需要调用不同的Java版本时,只需要更改Java_home的文件位置即可实现Java版本的替换。
4 Java程序开发
在这里插入图片描述

5 eclipse安装
开源免费软件,用于编写Java程序。
Class:不同类,进行存储。
Package:存储不同类的文件夹
Public static:生成代码的初始格式。
注释:
 单行注释: //注释
 多行注释: /注释/
 文档注释: /*注释/
定时开关机程序的编写。
功能执行语句必须以英文分号结束。
6.基础语法
6.1 变量
数据类型划分:
基本数据变量
引用数据变量
声明位置划分:
局部变量
成员变量
6.2 数据类型
在这里插入图片描述

7 方法
格式
权限修饰符 返回值类型 方法名称(参数列表){
逻辑功能;
return 返回值;
}
8 运算符
算术运算符
在这里插入图片描述

赋值运算符
在这里插入图片描述

关系运算符
在这里插入图片描述

逻辑运算符
在这里插入图片描述

字符串连接
+
三目运算符
X?Y:Z
9. 接收输入
Scanner scanner = new Scanner(System.in)
scanner.nextInt()
scanner.next()
10. 转义字符
在这里插入图片描述

11.分支结构
if(条件语句){}
if(条件语句){}else{}
if(条件语句){}else if(条件语句){}else{}

  1. 循环结构
    for
    while
    do/while

break: 跳出循环体
continue: 跳出本次循环

  1. 数组
    创建
    数据类型[] 数组名称 = {1,2,3,n}
    数据类型[] 数组名称 = new 数据类型[数组长度]
    数据类型[] 数组名称 数组名称=new 数据类型[数据长度]
    数据类型[] 数组名称 = new 数据类型[] {1,2,3,n}
    int[] [] 名称 = new int[长度][]
    取值
    数组名称[下表]
    长度
    数组名称.length
    问题
    下标越界
    空指针问题-未赋值
    最大最小值寻找
    在这里插入图片描述

  2. 冒泡排序

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

  1. 二分查找

在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值