【学习笔记】Java 一对一培训(2.1)Java基础语法

【学习笔记】Java 一对一培训(2.1)Java基础语法

  • 关键词:Java、Spring Boot、Idea、数据库、一对一、培训、教学
  • 本文主要内容含Java简介、Java基础语法、Java对象和类、Java基本数据类型、Java变量类型、Java修饰符
  • 计划2小时完成,请同学尽量提前准备。这部分主要讲述Java是什么、怎么用,可能会比较枯燥!
  • 有学习需要请联系:xujian_cq
  • 手把手教学、腾讯会议一对一培训,所有代码都要敲一遍,有问题随时暂停解决
  • 前置内容(【学习笔记】Java 一对一培训(第一部分)开发工具介绍和安装)链接

文章导航栏

(1)Java 一对一培训(第一部分)开发工具介绍和安装
(2.1)Java 一对一培训(2.1)Java基础语法
(2.2)Java 一对一培训(2.2)Java基础逻辑
(3.1)Java 一对一培训(3.1)Spring Boot介绍和基础

1 Java简介

1.1 Java简介

Java 是由 Sun Microsystems 公司于 1995 年 5 月推出的高级程序设计语言。

Java 可运行于多个平台,如 Windows, Mac OS 及其他多种 UNIX 版本的系统。

本教程通过简单的实例将让大家更好的了解 Java 编程语言,应用Java语言完成服务端软件的开发。

移动操作系统 Android 大部分的代码采用 Java 编程语言编程,阿里巴巴、腾讯、京东百度等互联网主要后端开发语言也是Java。

1.2 Java能用来做什么

  1. 学习Java可以做网站(本次教程主要内容)
  2. 学习Java可以做Android应用开发
  3. 学习Java可以做游戏(电脑上也有Java开发的游戏,最经典的是:《我的世界》(minecraft ,简称MC),当今世界最具人气和影响力的网络游戏之一《英雄联盟》(简称lol)。 )
  4. 学习Java可以做软件(Java可以做客户端软件,如QQ、PPT这种软件,但不是主流做软件的技术)
  5. 做嵌入式开发(硬件设备)
  6. 大数据(最典型的大数据应用Hadoop、Spark等,都最好用Java开发)
  7. 科学应用(Java的安全性、便携性让Java在科学应用、金融服务、空间巨大)

2 Java基础语法

2.1 介绍

一个 Java 程序可以认为是一系列对象的集合,而这些对象通过调用彼此的方法来协同工作。下面简要介绍下类、对象、方法和实例变量的概念。

  • 对象:对象是类的一个实例,有状态和行为。例如,一条狗是一个对象,它的状态有:颜色、名字、品种;行为有:摇尾巴、叫、吃等。
  • :类是一个模板,它描述一类对象的行为和状态。
  • 方法:方法就是行为,一个类可以有很多方法。逻辑运算、数据修改以及所有动作都是在方法中完成的。
  • 实例变量:每个对象都有独特的实例变量,对象的状态由这些实例变量的值决定。

2.2 运行第一个Java程序

2.3 Java语法

2.3.1 方法的构成

2.3.2 语法说明

编写 Java 程序时,应注意以下几点:

  1. 大小写敏感:Java 是大小写敏感的,这就意味着标识符 Hello 与 hello 是不同的。(中英文符号)
  2. 类名:对于所有的类来说,类名的首字母应该大写。如果类名由若干单词组成,那么每个单词的首字母应该大写,例如 MyFirstJavaClass 。
  3. 方法名:所有的方法名都应该以小写字母开头。如果方法名含有若干单词,则后面的每个单词首字母大写。
  4. 源文件名:源文件名必须和类名相同。当保存文件的时候,你应该使用类名作为文件名保存(切记 Java 是大小写敏感的),文件名的后缀为 .java。(如果文件名和类名不相同则会导致编译错误)。
  5. 主方法入口:所有的 Java 程序由 public static void main(String[] args) 方法开始执行。

2.4 Java 标识符

Java 所有的组成部分都需要名字。类名、变量名以及方法名都被称为标识符。

关于 Java 标识符,有以下几点需要注意:

  1. 所有的标识符都应该以字母(A-Z 或者 a-z),美元符($)、或者下划线(_)开始
  2. 首字符之后可以是字母(A-Z 或者 a-z),美元符($)、下划线(_)或数字的任何字符组合
  3. 关键字不能用作标识符
  4. 标识符是大小写敏感的
  5. 合法标识符举例:age、$salary、_value、__1_value
  6. 非法标识符举例:123abc、-salary

像其他语言一样,Java可以使用修饰符来修饰类中方法和属性。主要有两类修饰符:

  • 访问控制修饰符 : default, public , protected, private
  • 非访问控制修饰符 : final, abstract, static, synchronized
  • 在后面的章节中我们会深入应用 Java 修饰符。

2.5 Java变量

Java 中主要有如下几种类型的变量

局部变量

类变量(静态变量)

成员变量(非静态变量)

2.6 Java数组

数组对于每一门编程语言来说都是重要的数据结构之一,当然不同语言对数组的实现及处理也不尽相同。

Java 语言中提供的数组是用来存储固定大小的同类型元素。

2.7 Java 关键字


2.8 Java注释

注释中的字符将被 Java 编译器忽略。

java 复制代码
// 注释一
/**
* 注释二
*/
//下方为正常Java代码
System.out.println("Hello World.");

2.9 Java 空行

空白行或者有注释的行,Java 编译器都会忽略掉。

2.10 继承

  • 在 Java 中,一个类可以由其他类派生。如果你要创建一个类,而且已经存在一个类具有你所需要的属性或方法,那么你可以将新创建的类继承该类。
  • 利用继承的方法,可以重用已存在类的方法和属性,而不用重写这些代码。被继承的类称为超类(super class),派生类称为子类(sub class)。

2.11 接口

  • 在 Java 中,接口可理解为对象间相互通信的协议。接口在继承中扮演着很重要的角色。
  • 接口只定义派生要用到的方法,但是方法的具体实现完全取决于派生类。

3 Java 对象和类

  • Java作为一种面向对象语言。支持以下基本概念:多态、继承、封装、抽象、类、对象、实例、方法、重载。
  • 其中最重要的就是对象和类,Java的编程都是围绕对象和类在开展。
  • 对象:对象是类的一个实例(对象不是找个女朋友),有状态和行为。例如,一条狗是一个对象,它的状态有:颜色、名字、品种;行为有:摇尾巴、叫、吃等。
  • :类是一个模板,它描述一类对象的行为和状态。
  • 重点理解类和对象

4 Java基本数据类型

4.1 介绍

  • 变量就是申请内存来存储值。也就是说,当创建变量的时候,需要在内存中申请空间。

  • 内存管理系统根据变量的类型为变量分配存储空间,分配的空间只能用来储存该类型数据。

  • Java 的两大数据类型:

    内置数据类型

    引用数据类型

  • Java语言提供了八种基本类型。六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型。

4.2 byte

byte 数据类型是8位、有符号的,以二进制补码表示的整数;

最小值是 -128(-2^7);

最大值是 127(2^7-1);

默认值是 0;

byte 类型用在大型数组中节约空间,主要代替整数,因为 byte 变量占用的空间只有 int 类型的四分之一;

例子:byte a = 100,byte b = -50。

4.3 short

short 数据类型是 16 位、有符号的以二进制补码表示的整数

最小值是 -32768(-2^15);

最大值是 32767(2^15 - 1);

Short 数据类型也可以像 byte 那样节省空间。一个short变量是int型变量所占空间的二分之一;

默认值是 0;

例子:short s = 1000,short r = -20000。

4.4 int(重要!)

int 数据类型是32位、有符号的以二进制补码表示的整数;

最小值是 -2,147,483,648(-2^31);

最大值是 2,147,483,647(2^31 - 1);

一般地整型变量默认为 int 类型;

默认值是 0 ;

例子:int a = 100000, int b = -200000。

4.5 long(重要!)

long 数据类型是 64 位、有符号的以二进制补码表示的整数;

最小值是 -9,223,372,036,854,775,808(-2^63);

最大值是 9,223,372,036,854,775,807(2^63 -1);

这种类型主要使用在需要比较大整数的系统上;

默认值是 0L;

例子: long a = 100000L,long b = -200000L。

"L"理论上不分大小写,但是若写成"l"容易与数字"1"混淆,不容易分辩。所以最好大写。

4.6 float(重要!)

float 数据类型是单精度、32位、符合IEEE 754标准的浮点数;

float 在储存大型浮点数组的时候可节省内存空间;

默认值是 0.0f;

浮点数不能用来表示精确的值,如货币;

例子:float f1 = 234.5f。

4.7 double(重要!)

double 数据类型是双精度、64 位、符合 IEEE 754 标准的浮点数;

浮点数的默认类型为 double 类型;

double类型同样不能表示精确的值,如货币;

默认值是 0.0d;

4.8 boolean

boolean数据类型表示一位的信息;

只有两个取值:true 和 false;

这种类型只作为一种标志来记录 true/false 情况;

默认值是 false;

例子:boolean one = true。

4.9 char

char 类型是一个单一的 16 位 Unicode 字符;

最小值是 \u0000(十进制等效值为 0);

最大值是 \uffff(即为 65535);

char 数据类型可以储存任何字符;

例子:char letter = 'A';。

4.10 String(重要!String不是基本类型)

字符串广泛应用 在 Java 编程中,在 Java 中字符串属于对象,Java 提供了 String 类来创建和操作字符串。

1.创建字符串:String str = "123";String str1 = new String("hello");

2.字符串长度: int strLen = str.length();

3.连接字符串:String newString = str + str1;

4.创建格式化字符串:String fs = String.format("浮点型变量的值为 " + "%f, 整型变量的值为 " + " %d, 字符串变量的值为 " + " %s", floatVar, intVar, stringVar);

5.一些常见方法: subString、startWith、endWith、compareTo

5 Java 变量类型

Java 语言支持的变量类型有:

  • 局部变量(Local Variables):定义在方法、构造方法或语句块中的变量,作用域只限于当前方法、构造方法或语句块中。局部变量必须在使用前声明,并且不能被访问修饰符修饰。

  • 成员变量(Instance Variables):定义在类中、方法之外的变量,作用域为整个类,可以被类中的任何方法、构造方法和语句块访问。成员变量可以被访问修饰符修饰。

  • 静态变量(Class Variables):定义在类中、方法之外的变量,并且使用 static 关键字修饰,作用域为整个类,可以被类中的任何方法、构造方法和语句块访问,静态变量的值在程序运行期间只有一个副本。静态变量可以被访问修饰符修饰。

  • 参数变量(Parameters):方法定义时声明的变量,作为调用该方法时传递给方法的值。参数变量的作用域只限于方法内部。

6 Java 修饰符

  • Java语言提供了很多修饰符,主要分为以下两类:访问修饰符、非访问修饰符。

6.1 访问控制修饰符

Java中,可以使用访问控制符来保护对类、变量、方法和构造方法的访问。Java 支持 4 种不同的访问权限。

  • default (即默认,什么也不写): 在同一包内可见,不使用任何修饰符。使用对象:类、接口、变量、方法。
  • private : 在同一类内可见。使用对象:变量、方法。 注意:不能修饰类(外部类)
  • public : 对所有类可见。使用对象:类、接口、变量、方法
  • protected : 对同一包内的类和所有子类可见。使用对象:变量、方法。 注意:不能修饰类(外部类)。

6.2 非访问控制修饰符

  • static 修饰符:用来修饰类方法和类变量。
  • final 修饰符:用来修饰类、方法和变量,final 修饰的类不能够被继承,修饰的方法不能被继承类重新定义,修饰的变量为常量,是不可修改的。
  • abstract 修饰符:用来创建抽象类和抽象方法。
  • synchronized 和 volatile 修饰符,主要用于线程的编程。

static 修饰符:

  • 静态变量:static 关键字用来声明独立于对象的静态变量,无论一个类实例化多少对象,它的静态变量只有一份拷贝。 静态变量也被称为类变量。局部变量不能被声明为 static 变量。
  • 静态方法:static 关键字用来声明独立于对象的静态方法。静态方法不能使用类的非静态变量。静态方法从参数列表得到数据,然后计算这些数据。

7 结语

万事开头难,加油。

相关推荐
sssuperMario几秒前
IDEA无法创建java8、11项目创建出的pom.xml为空
xml·java·intellij-idea
豪宇刘11 分钟前
Spring MVC
java·spring·mvc
White graces12 分钟前
Spring MVC练习(前后端分离开发实例)
java·开发语言·前端·后端·spring·java-ee·mvc
深蓝浅蓝的天23 分钟前
nginx超长讨论汇总与常见问题
java·nginx
分才25 分钟前
用天翼云搭建一个HivisionIDPhoto证件照处理网站
人工智能·学习·html5
forNoWhat34 分钟前
计算机网络习题解答--个人笔记(未完)
笔记·计算机网络
小黄编程快乐屋3 小时前
各个排序算法基础速通万字介绍
java·算法·排序算法
一尘之中4 小时前
使用 PyTorch TunableOp 加速 ROCm 上的模型
人工智能·pytorch·学习
honey ball4 小时前
LLC与反激电路设计【学习笔记】
单片机·嵌入式硬件·学习
材料苦逼不会梦到计算机白富美5 小时前
贪心算法-区间问题 C++
java·c++·贪心算法