java基础讲义

  • 一 java语言
    • 1.1 java语言介绍
      • 1.1.1 什么是java
      • 1.1.2 java之父
      • 1.1.3 java语言发展史
    • 1.2 java语言的特点
  • 二 java环境搭建相关
    • 2.1 Java环境介绍
      • 2.1.1 虚拟机介绍
      • 2.1.2 JVM介绍
    • 2.2 Java跨平台
      • 2.2.1 跨平台
      • 2.2.2 跨平台原理
    • 2.3 java运行过程
    • 2.4 JDK、JRE、JVM关系图
      • 2.4.1 JRE介绍
      • 2.4.2 JDK介绍
    • 2.5 JDK下载安装
      • 2.5.1 JDK下载
  • 三 java基础语法
    • 3.1 关键字介绍
    • 3.2 java注释
    • 3.3 java标识符
  • 四 常量
    • 4.1 什么是常量
    • 4.2 常量分类
    • 4.3 案例

一 java语言

1.1 java语言介绍

1.1.1 什么是java

Java是一门面向对象编程语言,1995年诞生于Sun公司(Stanford University Network),在2009年被Oracle公司收购。
Java语言不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此 Java语言具有功能强大和简单易用两个特征。Java语言还拥有全球最大的软件开发团队和极其成熟的软件生态圈。

1.1.2 java之父

詹姆斯·高斯林(James Gosling)1955年5月19日出生于加拿大,1977年获得了加拿大卡尔加里大
学计算机科学学士学位,1983年获得了美国卡内基梅隆大学计算机科学博士学位,毕业后到IBM工作,
设计IBM第一代工作站NeWS系统,但不受重视。后来转至Sun公司,1990年,与Patrick,Naughton和
Mike Sheridan等人合作“绿色计划”,后来发展一套语言叫做“Oak”,后改名为Java。
2009年四月,Sun被Oracle公司并购。高斯林于2010年四月时宣布从Oracle司离职。
2011年3月29日,高斯林在个人博客上宣布将加入Google。
2011年8月30日,仅仅加入Google数月之后的高斯林就在个人博客上宣布离开Google,加盟一家从
事海洋机器人研究的创业公司Liquid Robotics,担任首席软件架构师。
在2011年5月建立的Scala公司Typesafe Inc.,高斯林被聘请为公司顾问。

1.1.3 java语言发展史

Java一开始的名称不叫Java而叫Oak,在申请注册商标时,发现Oak已经被人使用了,再想了一系列
名字之后,最终使用了提议者在喝一杯Java咖啡时无意提到的Java词语。

Java语言诞生于20世纪90年代,在1991年成立了一个称为Green的项目小组,这个小组由詹姆斯·
高斯林(James Gosling)领导在加利福尼亚州门洛帕克市沙丘路的一个小工作室里面研究开发新技术,
专攻计算机在家电产品上的嵌入式应用。大幅度提升消费类电子产品(如电视机顶盒、面包烤箱、移动
电话等)的智能化程度。

SUN公司介绍
成立到上市
Sun Microsystems是IT及互联网技术服务公司Sun Microsystems 创建于1982年。Sum和这个名字其
实是斯坦福大学校园网(Stanford University Network)的首字母缩写。主要产品是工作站及服务器。
1986年在美国成功上市。1992年sun推出了市场上第一台多处理器台式机SPARCstation 10 system,并
于1993年进入财富500强。

一年时间跌入低谷
2001年的sun公司,不仅人数规模、市场股值、办公面积远不能和八十年代相比(能人都走了,办公
楼也卖了,股票一落千丈),而且彻底退出了 IT 领域霸主之争。太阳公司从 1982 年成立到 2000 年达
到顶峰用了近二十年时间,而走下坡路只用了一年,足以令经营者为戒。

甲骨文(Oracle)收购
2009年4月20日甲骨文以现金收购Sun微系统公司,交易价格达74亿美元。该协议达成后,IBM公司
放弃了收购网络设备制造商。IBM公司此前表示愿意以每股9.40美元购买Sun公司的股票,但收购谈判破
裂后,IBM公司于2009年5月初取消独家谈判权,IBM并撤回其报价。

1.2 java语言的特点

简单性
语法简单快速上手、避免了复杂的指针、多继承等,java程序员无需手动内存管理且提供丰富的类
库等。

面向对象
支持面向对象的特点如:封装、继承、多态能让编写java程序拥有更多的复用性和灵活性,避免面向
过程思维所带来的编程复杂性。

分布式
Java包括支持HTTP和FTP等基于TCP/IP协议,针对网络协议进行封装让java应用访问网络对象时像
访问本地对象一样方便。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。

健壮性
Java语言检查程序错误分为编译时错误和运行时错误,错误尽可能在编译期间检查发现,避免了运
行时发生。避免多继承、指针、手动内存管理等都是进一步避免不必要的问题发生。

安全性
Java 编译器和虚拟机强制实施的内置的语言安全特性:强大的数据类型管理、编译时检查、自动内
存管理、字节码验证、安全的类加载等。

可移植性
Java与C/C++不同,Java规范中没有“依赖具体实现的地方”。基本数据类型的大小以及有关运算都做
了明确的说明。例如,Java中的int永远是32位的整数,而在C/C++中,int可能是16位整数,32位整数,
也可能是编译器提供商指定的其他大小。在Java中对数据类型固定大小,具备良好的可移植性。

跨平台
Java程序(write once, run anywhere)号称一次编写到处运行,Java程序编译完成后可以在
Windows、Linux、MAC等系统运行。

高性能
Java程序字节码可以在运行时动态、快速、高效地翻译成对应运行这个应用特定CPU的机器语言。

多线程
Java语言支持多线程让程序可以分为多个小任务并发或并行执行,让程序可以有更好的交互性能和
实时控制性能。另一方面可以提高对CPU的利用率。

结构中立
Java的字节码实现了结构中立,与计算机结构无关。编译器生成一个体系结构中立的目标文件格式
(字节码),精心设计的字节码不仅可以很容易地在任何机器上解释执行,而且还可以迅速地翻译成本
地机器的代码。

动态性
Java的动态特性是其面向对象设计方法的拓展,它允许程序动态的装入运行过程中的所需要的类。
也可以通过网络来载入所需要的类有利于程序的扩展和升级。

二 java环境搭建相关

2.1 Java环境介绍

2.1.1 虚拟机介绍

虚拟机是一种抽象化的计算机,通过在实际的计算机上仿真模拟各种计算机功能来实现的。简单的
理解就是虚拟出来的一台机器,你用的笔记本电脑就是一台真实的物理机,虚拟机都是建立在物理机的
操作系统之上,虚拟机就是一个软件。

2.1.2 JVM介绍

Java虚拟机(Java Virtual Machine 简称JVM)是运行所有Java程序的抽象计算机,是Java语言的运
行环境。初学者可以简单的理解为JVM就是用来执行JAVA程序的,如果没有JVM开发好的java程序无法运行。
JVM是一种规范,可以采用硬件或软件方式来实现。如果是硬件方式实现,那么这台硬件计算机只
能执行java程序。如果采用软件方式实现,那么软件是安装在操作系统基础之上的,这台机器除了可以
执行java程序以外,还能够安装执行其他的软件程序。

2.2 Java跨平台

2.2.1 跨平台

Java程序(write once, run anywhere)号称一次编写到处运行,Java程序编写完成后可以在
Windows、Linux、MAC等系统运行。
平台:
跨平台的平台指的是操作系统。

2.2.2 跨平台原理

Java语言跨平台核心依赖的是JVM,在各个不同类型的操作系统安装对应操作系统版本的JVM即
可,JVM屏蔽了不同类型操作系统的差异性。

2.3 java运行过程

2.4 JDK、JRE、JVM关系图

2.4.1 JRE介绍

JRE(Java Runtime Environment)Java运行环境,包含JVM标准实现及Java核心类库,是java程序最
小运行环境。

JRE可以单独下载安装,如果想要运行一个编译好的Java程序,计算机中只需要安装JRE即可。

2.4.2 JDK介绍

JDK(Java Development Kit) Java语言开发工具包,包含了JRE和Java开发工具,工具包也是java语言
开发的java程序。如果安装了JDK就不用再安装JRE。

JDK包含JRE的目的:
1.使用工具开发好程序以后方便运行测试程序。
2.JDK目录下的bin目录下有很多的exe执行文件,这些exe文件都是JDK提供的一些工具,这些工具是
采用java语言编写的java程序,为了方便使用打包为exe文件,如果没有JRE,jdk所提供的工具也无法使
用。

2.5 JDK下载安装

2.5.1 JDK下载

官网地址: jdk下载
不做详细说明,可以参考其他下载安装的流程
超详细JDK下载与安装步骤
idea下载安装

三 java基础语法

3.1 关键字介绍

什么是关键字?
就是被java语言赋予特殊含义的单词。
关键字的特点
组成关键的字母都是小写。
常见关键字
class,public,static,void … 。
关键字注意事项
goto和const是java语言的保留字。
类似于editplus这样的高级文本编辑器对关键字都是有颜色变化的。
关键字列表

3.2 java注释

注释介绍
用于解释说明程序的文字,有利于程序调试、后期维护和扩展等。
初学者在开发时先写程序时,先写思路再写代码。代码里面既包含程序思路、程序解释、程序代码
等,程序思路和程序说明不属于程序执行的一部分,必须进行注释。
注释分类
单行注释
格式: // 注释的文字
多行注释
格式: /* 注释的文字 /
文档注释
格式: /
* 注释的文字 */

//这是我开发的第一个java程序
class HelloWorld{/*
main是一个主方法,是程序的入口
*/
public static void main(String[] args){System.out.println("HelloWorld!");}
}

3.3 java标识符

什么是标识符

就是给类,接口,方法,变量,常量等起名字时使用的字符序列
字符序列:
多个字母组成

标识符的组成规则

英文的大小写字母(a-z,A-Z)
数字字符(0-9)
$和_

标识符注意事项

不能以数字开头
不能是java中的关键字
区分大小写

命名规则

项目名命名
全部小写
包名命名
全部小写

类名命名

//一个单词组成,单词首字母大写
//多个单词组成,每个单词首字母大写
//例如:
public class MyFirstClass{}

变量名、方法名命名

//一个单词组成,单词首字母小写
//多个单词组成,第一个单词首字母小写,后面的每个单词的首字母都要大写
//例如:
int index = 0 ;
public void toString(){}

常量名命名

/*一个单词组成,单词所有字母大写
多个单词组成,单词所有字母大写,多个单词用下划线分开。
例如:*/
public static final String GAME_COLOR = "RED";

四 常量

4.1 什么是常量

在程序运行过程中其值不会发生改变的数据就是常量。
程序运行过程:
运行时间
运行次数

4.2 常量分类

4.3 案例

public class ConstantDemo {public static void main(String[] args){//输出整数常量System.out.println(12345);//输出小数常量System.out.println(3.14);//输出字符常量System.out.println('A');//输出布尔常量System.out.println(true);//输出字符串常量System.out.println("HelloWorld!");}
}

JAVA学习-java基础讲义01相关推荐

  1. Java学习-Java语言基础

    Java学习-Java语言基础 1.Java符号集  1.1Java标识符  1.2关键字  1.3分割符和注释 2.java 数据类型  2.1整型   2.1.1整型常量   2.1.2整型变量 ...

  2. c语言/c++转Java学习笔记---基础问题

    c语言/c++转Java学习笔记---基础问题 1.java注释 2.数组的定义和使用 定义 使用 3.类 4.this 的使用 5.继承 6.super的使用 7.包 8.修饰符 成员的访问控制符( ...

  3. [Java]学习Java(1)运算符语句类

    [Java]学习Java(1)运算符&语句&类 一.运算符&语句 1.相等运算符"==" (1)基本类型时值相等就为true (2)对象比较时比较其引用地址 ...

  4. 03搭建JAVA环境——java学习——java初学者专题教程

    03搭建JAVA环境--java学习--java初学者专题教程 第一步:进入ORACLE官网 http://www.oracle.com/index.html 第二步:进入下载页面下载JDK版本,建议 ...

  5. JAVA学习-java基础讲义02

    java基础讲义02 一 进制 1.1 进制介绍 1.2 二进制 1.3 任意进制到十进制转换 1.4 十进制到任意进制之间的转换 1.5 快速转换法 1.6 有符号数据表示法 二 Java变量和数据 ...

  6. java学习笔记-基础知识-2023.3.29

    学习网站:https://www.sxt.cn/Java_jQuery_in_action/History_Direction.html 刷题网站 牛客网专题-spring java sql 第一章 ...

  7. Java学习---面试基础知识点总结

    Java中sleep和wait的区别 ① 这两个方法来自不同的类分别是,sleep来自Thread类,和wait来自Object类.sleep是Thread的静态类方法,谁调用的谁去睡觉,即使在a线程 ...

  8. Java学习笔记基础(下)

    基本数据类型对象包装类:是按照面向对象思想将基本数据类型封装成了对象. 好处: 1:可以通过对象中的属性和行为操作基本数据. 2:可以实现基本数据类型和字符串之间的转换. 关键字   对应的类名 by ...

  9. Java学习笔记基础(上)

    写代码: 1,明确需求.我要做什么? 2,分析思路.我要怎么做?1,2,3. 3,确定步骤.每一个思路部分用到哪些语句,方法,和对象. 4,代码实现.用具体的java语言代码把思路体现出来. 学习新技 ...

最新文章

  1. (android硬件应用实战)摄像头拍照实现和总结
  2. java动脑公开课_java课堂动手动脑
  3. 解决svn cannot set LC_CTYPE locale的问题
  4. esp8266驱动_【直播视频】微信小程序连接阿里云物联网控制esp8266实现rgb调节。...
  5. c语言实现文档中字符串的替换,C语言 16行代码实现字符串中指定字符串替换
  6. 指针的高阶用法——指向指针的指针
  7. 一步步学习SPD2010--第十四章节--在Web页面使用控件(2)--使用标准ASP.NET服务器控件...
  8. 最近 搞定这5篇 java相关
  9. Activity的Launch mode详解 singleTask正解
  10. 小学计算机应用到英语课教案,人教版小学英语三年级上册unit one hello!文具单词教学信息技术应用成果(教学设计方案).doc...
  11. VFP9 连接mysql代码示例
  12. 快速傅里叶变换(蝶形算法c++源代码)
  13. 百度bae专业版svn提交问题
  14. python编写自定义函数计算约登值(约登指数、Youden Index)、寻找最佳阈值(threshold、cutoff)、以及最佳阈值对应的ROC曲线中的坐标点
  15. requests爬取4399游戏链接
  16. 自学php多久可以工作_php自学要多久,学php难吗,多久能学会?
  17. Excel 调用百度翻译API进行翻译
  18. 微信小程序动态倒计时
  19. php增加横排文字的间距,html段落内文字设置字间距间隔
  20. 计算机房用什么气体灭火,计算机房(IDC机房)采用什么气体灭火系统最佳?

热门文章

  1. 第十次作业,自主学习
  2. RuntimeWarning:... received a naive datetime while time zone support is active,对USE_TZ = False的解释。
  3. vim安装air-line插件
  4. 一周 AIGC 丨王小川打造中国版 OpenAI,阿里版 ChatGPT 上线邀测
  5. 微软与合作伙伴纵论中国软件外包品牌缺失
  6. python爬取天气预报数据并保存为txt格式_今天分享一个用Python来爬取小说的小脚本!(附源码)...
  7. 意大利联合信贷银行寻求战略合作伙伴
  8. 普罗米修斯监控linux,普罗米修斯监控简单搭建
  9. Prometheus普罗米修斯监控+Alertmanager预警+钉钉预警
  10. 一加9和一加9pro参数对比买哪个 一加9和一加9pro配置区别