博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java基础入门(一)
阅读量:4249 次
发布时间:2019-05-26

本文共 3984 字,大约阅读时间需要 13 分钟。

java基础入门(一)

1. Java概述

1.1 Java语言发展史

在学习Java语言之前,我们首先要了解一些基本的概念:

语言:人与人交流沟通的方式
计算机语言:指的是人与计算机之间进行信息交流沟通的一种媒介,Java就是计算机语言中的一种。
Java语言是美国Sun公司(Stanford University Network)在1995年推出的,詹姆斯·高斯林(James Gosling)被称为Java之父。2009年,Sun公司被甲骨文公司收购,所以现在我们可以访问oracle官网下载Java相关资料与内容。

1.2 JRE和JDK

在学习Java时需要理解以下几个概念:

JVM(Java Virtual Machine):Java虚拟机;
JRE(Java Runtime Environment):Java运行环境,包含了JVM和Java的核心类库(Java API);
JDK(Java Development Kit)称为Java开发工具,包含了JRE和开发人员使用的各种工具,如编译工具javac.exe和运行工具java.exe。
总结:JRE包含JVM和核心类库,JDK又包含JRE和开发工具,JDK > JRE >JVM。开发java程序时,只需要安装JDK。

1.3 Java跨平台原理

Java程序并非是直接运行的,Java编译器将Java源程序编译成与平台无关的字节码文件(class文件),然后由Java虚拟机(JVM)对字节码文件解释执行。所以在不同的操作系统下,只需安装不同的Java虚拟机即可实现java程序的跨平台。

1.4 JDK安装目录介绍

JDK安装目录介绍

1.5 常用DOS命令

在接触集成开发环境之前,我们需要使用命令行窗口对java程序进行编译和运行,所以需要知道一些常用DOS命令。

1、打开命令行窗口的方式:win + r打开运行窗口,输入cmd,回车。

2、常用命令及其作用

在这里插入图片描述

1.6 Path环境变量的配置的目的

开发Java程序,需要使用JDK提供的开发工具(比如javac.exe、java.exe等命令),而这些工具在JDK的安装目录的bin目录下,如果不配置环境变量,那么这些命令只可以在该目录下执行。我们不可能把所有的java文件都放到JDK的bin目录下,所以配置环境变量的作用就是可以使bin目录下的java相关命令可以在任意目录下使用

2. 第一个演示程序HelloWolrd

HelloWorld案例是指在计算机屏幕上输出“HelloWorld”这行文字。各种计算机语言都习惯使用该案例作为第一个演示案例。

开发Java程序,需要三个步骤:编写程序,编译程序,运行程序

2.1 HelloWorld案例的编写

编写程序如下:

public class HelloWorld {
public static void main(String[] args) {
System.out.println("HelloWorld"); }}

2.2 HelloWorld案例的编译和运行

存文件,打开命令行窗口,将目录切换至java文件所在目录,编译java文件生成class文件,运行class文件。如下所示:

编译:javac 文件名.java
范例:javac HelloWorld.java

执行:java 类名

范例:java HelloWorld

2.3 HelloWorld案例常见问题

系统或程序中,隐藏着的一些未被发现的缺陷或问题统称为bug(漏洞),程序员就需要具备识别、分析和解决bug的能力。

在HelloWorld案例中常见的bug有以下几种:

1、非法字符问题:Java中的符号都是英文格式的。

2、大小写问题:Java语言对大小写敏感(区分大小写)。

3、在系统中显示文件的扩展名,避免出现HelloWorld.java.txt文件。

4、编译命令后的java文件名需要带文件后缀.java

5、运行命令后的class文件名(类名)不带文件后缀.class

3. java基础语法

3.1 注释

注释是对代码的解释和说明文字,可以提高程序的可读性,因此在程序中添加必要的注释文字十分重要。Java中的注释分为三种:

单行注释:单行注释的格式是使用//,从//开始至本行结尾的文字将作为注释文字。

// 单行注释

多行注释:多行注释的格式是使用/* 和 */将一段较长的注释括起来。(注意:多行注释不能嵌套使用)

/*多行注释多行注释多行注释*/

文档注释:文档注释以/**开始,以*/结束。文档注释会写进帮助文档中。

/**文档注释文档注释*/

3.2 关键字

关键字是指被java语言赋予了特殊含义的单词。

关键字的特点:

​ 关键字的字母全部小写。
​ 常用的代码编辑器对关键字都有高亮显示,比如现在我们能看到的public、class、static等。

3.3 常量

Java中的常量分类:

​ 1.字符串常量 :用双引号括起来的多个字符(可以包含0个、一个或多个),例如"a"、“abc”、"中国"等

​ 2.整数常量 : 整数,例如:-10、0、88等

​ 3.小数常量 :小数,例如:-5.5、1.0、88.88等

​ 4.字符常量: 用单引号括起来的一个字符,例如:‘a’、‘5’、‘B’、'中’等

​ 5.布尔常量 :布尔值,表示真假,只有两个值true和false

6.空常量 :一个特殊的值,空值,值为null

注意:除空常量外,其他常量均可使用输出语句直接输出。

3.4 数据类型

3.4.1 计算机存储单元

计算机只能识别1(高电平)和0(低电平),计算机存储设备的最小信息单元叫“位(bit)”,又叫“比特位”,即1个“1”或者1个“0”,通常用小写的字母”b”表示;而计算机中最基本的存储单元叫“字节(byte)”,通常用大写字母”B”表示,字节是由连续的8个位组成。

除了字节外还有一些常用的存储单位,其换算单位如下:

1B(字节) = 8bit

1KB = 1024B

1MB = 1024KB

1GB = 1024MB

1TB = 1024GB

1PB = 1024TB

3.4.2 Java中的数据类型

Java是一个强类型语言,Java中的数据必须明确数据类型。在Java中的数据类型包括基本数据类型和引用数据类型两种。

Java中的基本数据类型:

在这里插入图片描述

说明:
e+38表示是乘以10的38次方,同样,e-45表示乘以10的负45次方。

在java中整数默认是int类型,浮点数默认是double类型。

Java中的引用数据类型:

在这里插入图片描述

3.5 标识(zhi)符

标识符是用户编程时使用的名字,用于给类、方法、变量、常量等命名。

Java中标识符的组成规则:

​ 由字母、数字、下划线“_”、美元符号“$”组成,第一个字符不能是数字。

​ 不能使用java中的关键字作为标识符。

​ 标识符对大小写敏感(区分大小写)。

Java中标识符的命名约定:

​ 小驼峰式命名:变量名、方法名

​ 首字母小写,从第二个单词开始每个单词的首字母大写。

​ 大驼峰式命名:类名

​ 每个单词的首字母都大写。

​ 另外,标识符的命名最好可以做到见名知意

​ 例如:username、studentNumber等。

3.6 变量

变量:在程序运行过程中,其值可以发生改变的量。

从本质上讲,变量是内存中的一小块区域,其值可以在一定范围内变化。

变量使用时的注意事项:

1.变量在定义的时候,可以不用赋值,但是使用的时候必须有值
2.变量是有作用域的,变量的作用域在变量所在的大括号{}范围内有效
3.在同一个作用域中,变量名不能重复
4.可以同时定义同种数据类型的多个变量

3.7 类型转换

类型转换:是一个针对值的转换(整数,小数,字符);布尔类型和String类型不能转换

字符在存储到计算机的时候,会转换为一个整数进行存储,根据编码表转换
ASCII:英文,数字,符号和生活中文字的对应关系表
‘0’:48 ‘A’:65 ‘a’:97==>01100001
数据由小到大的范围: byte<short(char)<int<long<float<double
1.自动类型转换:把一个表示数据范围小的数值或者变量赋值给另一个表示数据范围大的变量。
大的数据类型 变量名 = 小的数据类型的值;
byte b = 100; int a = b;
int aa= 100; double dd = aa;
2.强制类型转换:把一个表示数据范围大的数值或者变量赋值给另一个表示数据范围小的变量,需要进行强转
小的数据类型 变量名 = (小的数据类型)大的数据类型的值;
int a = 100; byte b = (byte)a;
double dd = 8.8; int aa = (int)dd; int aa = (int)8.8;

3.8 Scanner的基本使用

Scanner类的作用:

Scanner是引用数据类型的一种,是java给我们提供好的类
我们可以使用Scanner获取用户在键盘输入的数据
使用步骤:
1.导包:找到要使用的类,需要写在类的上边
import java.util.Scanner;
2.创建对象,为引用数据类型变量赋值
数据类型 变量名 = 创建对象;[固定写法]
Scanner sc = new Scanner(System.in);
3.可以通过变量名,调用Scanner类中的方法
int i = sc.nextInt();//获取用户输入的整数,获取到回车或者空格结束
String s = sc.next();//获取用户输入的字符串,获取到回车或者空格结束

转载地址:http://gbwei.baihongyu.com/

你可能感兴趣的文章
pyspark-combineByKey详解
查看>>
从原理到代码:大牛教你如何用 TensorFlow 亲手搭建一套图像识别模块 | AI 研习社
查看>>
FM算法详解
查看>>
FM算法能够学习到原始特征的embedding表示
查看>>
Factorization Machines 学习笔记
查看>>
Spark入门实战系列--9.Spark GraphX介绍及实例
查看>>
倾情大奉送--Spark入门实战系列
查看>>
Navicat使用技巧(附快捷键)
查看>>
大数据在营销和销售中的十大应用
查看>>
python 的日志logging模块学习
查看>>
谷歌推Tacotron 2,搞定绕口令,效果优于WaveNet
查看>>
Spark 2.1.0 入门:特征抽取–Word2Vec(Python版)
查看>>
[NLP] MXnet与TensorFlow的自然语言处理应用
查看>>
#####@@@#好好好好#####最全知识图谱介绍:关键技术、开放数据集、应用案例汇总
查看>>
MxNet使用总览
查看>>
DL4NLP —— seq2seq+attention机制的应用:文档自动摘要(Automatic Text Summarization)
查看>>
QA问答系统中的深度学习技术实现
查看>>
NLP专题论文解读:从Chatbot、NER到QA系统...
查看>>
端到端的TTS深度学习模型tacotron(中文语音合成)
查看>>
神经网络在关系抽取中的应用
查看>>