Java学习教程,从入门到精通, Java 基础语法(4)

1、Java 基础语法

一、Java 简介与开发环境搭建

  1. Java 简介:Java 是一种面向对象的编程语言,具有跨平台、安全、稳定等特点。Java 主要应用于企业级应用、Android 应用开发、大数据处理等领域。
  2. 开发环境搭建:搭建 Java 开发环境需要安装 JDK(Java Development Kit)和 IDE(集成开发环境)。常用的 JDK 版本有 JDK 8、JDK 11 等,常用的 IDE 有 Eclipse、IntelliJ IDEA 等。

2、Java 基础语法

  1. 数据类型

(1)基本数据类型:int、byte、short、long、float、double、char、boolean

(2)引用数据类型:类、接口、数组

  1. 变量与常量

(1)变量:用于存储数据的容器,有作用域和生命周期。定义变量时需要指定数据类型和变量名,如 int age = 20;

(2)常量:在程序运行过程中值不能改变的量,用 final 修饰符定义,如 final double PI = 3.14159;

  1. 运算符

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

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

(3)逻辑运算符:&&、||、!

(4)位运算符:&、|、^、~、<<、>>

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

  1. 流程控制

(1)条件语句:if、else、switch

(2)循环语句:for、while、do-while

(3)跳转语句:break、continue、return

  1. 数组

(1)一维数组:定义、初始化、遍历

(2)二维数组:定义、初始化、遍历

  1. 方法

(1)定义:public 返回值类型 方法名(参数类型 参数名) { 方法体 }

(2)调用:对象名.方法名(参数值)

(3)重载:方法名相同,参数列表不同

(4)递归:方法直接或间接调用自身

  1. 面向对象

(1)类与对象:类是对象的模板,对象是类的实例。定义类时需要指定类名、属性(成员变量)和方法。

(2)构造方法:用于创建对象,与类名相同,没有返回值类型。

(3)继承:子类继承父类的属性和方法,使用 extends 关键字。

(4)多态:不同类型的对象可以以相同的方式调用方法。

(5)抽象类与接口:抽象类不能被实例化,接口只能定义抽象方法。使用 abstract 修饰符定义抽象类,使用 interface 定义接口。

  1. 异常处理

(1)异常:程序在运行过程中出现的错误,分为编译时异常和运行时异常。

(2)异常处理:try-catch-finally 语句,用于捕获和处理异常。

(3)自定义异常:继承 Exception 或 RuntimeException 类,定义自己的异常类。

3、Java 常用类库

  1. String 类:用于处理字符串,提供长度、查找、替换、分割等方法。
  2. Math 类:提供数学运算方法,如求绝对值、最大值、最小值、幂运算等。
  3. Date 类:表示日期,提供获取当前日期、日期格式化等方法。
  4. Calendar 类:提供日期和时间字段,可以修改日期和时间。
  5. Random 类:提供随机数生成方法。
  6. Scanner 类:用于从键盘读取输入。
  7. ArrayList 类:实现 List 接口,提供动态数组功能。
  8. HashMap 类:实现 Map 接口,提供键值对存储功能。

4、Java 网络编程

  1. Socket 编程:基于 TCP 协议,实现客户端和服务器端通信。
  2. URL 编程:基于 HTTP 协议,实现网络请求和响应。
  3. JSON 编程:用于处理 JSON 数据格式,实现数据交换。
  4. XML 编程:用于处理 XML 数据格式,实现数据交换。

5、Java 多线程

  1. 线程:程序执行的基本单位,具有独立的功能和生命周期。
  2. 创建线程:继承 Thread 类或实现 Runnable 接口。
  3. 线程生命周期:新建、就绪、运行、阻塞、死亡。
  4. 线程同步:解决多线程访问共享资源的问题,使用 synchronized 关键字。
  5. 线程通信:使用 wait()、notify()、notifyAll() 方法实现线程间的通信。

6、Java I/O 编程

  1. 文件:操作系统管理的数据集合,分为文本文件和二进制文件。
  2. 流:Java I/O 编程的基本单位,分为输入流和输出流。
  3. 文件流:FileInputStream、FileOutputStream、FileReader、FileWriter。
  4. 缓冲流:BufferedInputStream、BufferedOutputStream、BufferedReader、BufferedWriter。
  5. 转换流:InputStreamReader、OutputStreamWriter。
  6. 数据流:DataInputStream、DataOutputStream。
  7. 对象流:ObjectInputStream、ObjectOutputStream。
  8. 网络流:SocketInputStream、SocketOutputStream。

7、Java 数据库编程

  1. JDBC:Java Database Connectivity,Java 数据库连接,用于连接数据库。
  2. 数据库驱动:实现 JDBC 接口的类库,用于与特定数据库通信。
  3. 数据库连接:通过驱动管理器获取数据库连接。
  4. 数据库操作:执行 SQL 语句,如增删改查。
  5. 事务处理:保证数据的一致性,使用 commit() 和 rollback() 方法。

8、Java Web 编程

  1. Servlet:Java Web 编程的核心技术,用于处理 HTTP 请求。
  2. JSP:Java Server Pages,用于动态生成 HTML 页面。
  3. Tomcat:常用的 Java Web 服务器,用于部署和运行 Web 应用。
  4. HTML、CSS、JavaScript:前端技术,用于实现网页布局和交互。
  5. AJAX:异步 JavaScript 和 XML,用于实现局部刷新页面。
  6. JSON:用于前后端数据交换的格式。
  7. XML:用于前后端数据交换的格式。
  8. Maven:项目管理工具,用于构建和管理 Java 项目。
  9. Spring:Java 企业级开发框架,提供依赖注入、事务管理等功能。
  10. MyBatis:持久层框架,简化数据库操作。
  11. Spring MVC:Web 框架,用于构建 MVC 架构的 Web 应用。
  12. Spring Boot:简化 Spring 应用的配置和开发。
  13. Spring Cloud:微服务架构开发框架,提供服务注册、配置中心等功能。
  14. Dubbo:分布式服务框架,用于构建微服务架构。
  15. ZooKeeper:分布式协调服务,用于服务注册和发现。
  16. Redis:高性能的键值对存储系统,用于缓存和分布式锁。
  17. RabbitMQ:消息队列,用于解耦系统和异步处理。
  18. Elasticsearch:搜索引擎,用于全文检索和数据分析。
  19. Docker:容器化技术,用于部署和管理应用。
  20. Kubernetes:容器编排平台,用于管理 Docker 容器。
  21. Git:版本控制工具,用于管理代码变更。
  22. Jenkins:持续集成工具,用于自动化构建和测试。
  23. Maven:项目管理工具,用于构建和管理 Java 项目。

Java基础语法是学习Java编程语言的基础,下面我将给出一些具体的案例,帮助您更好地理解Java的基础语法。

1. 数据类型

Java是一种强类型语言,这意味着每个变量在使用之前都必须声明其数据类型。Java的数据类型可以分为基本数据类型和引用数据类型。
基本数据类型包括:

  • 整数类型:byte, short, int, long
  • 浮点类型:float, double
  • 字符类型:char
  • 布尔类型:boolean
    引用数据类型包括:
  • 类(Class)
  • 接口(Interface)
  • 数组(Array)

2. 变量声明与赋值

// 声明并初始化一个整数类型的变量
int age = 25;
// 声明一个字符串类型的变量
String name = "张三";
// 声明一个布尔类型的变量
boolean isStudent = true;

3. 运算符

Java提供了丰富的运算符,包括算术运算符、关系运算符、逻辑运算符、位运算符等。

// 算术运算符
int sum = 10 + 20; // 加法
int diff = 30 - 10; // 减法
int prod = 5 * 4; // 乘法
int quot = 20 / 5; // 除法
int rem = 20 % 5; // 取模
// 关系运算符
boolean isGreater = 10 > 5; // 大于
boolean isLess = 10 < 5; // 小于
boolean isEqual = 10 == 5; // 等于
// 逻辑运算符
boolean isTrue = true;
boolean isFalse = false;
boolean andResult = isTrue && isFalse; // 与
boolean orResult = isTrue || isFalse; // 或
boolean notResult = !isTrue; // 非

4. 控制流

Java提供了多种控制流语句,包括条件语句、循环语句等。

// 条件语句
if (age > 18) {System.out.println("成年");
} else {System.out.println("未成年");
}
// 循环语句
for (int i = 0; i < 10; i++) {System.out.println(i);
}
int j = 0;
while (j < 10) {System.out.println(j);j++;
}
do {System.out.println(j);j++;
} while (j < 10);

5. 方法

方法是一段完成特定功能的代码块,可以接受参数并返回值。

// 无参无返回值的方法
public void sayHello() {System.out.println("Hello, World!");
}
// 有参无返回值的方法
public void printName(String name) {System.out.println("Hello, " + name);
}
// 有参有返回值的方法
public int add(int a, int b) {return a + b;
}

6. 类与对象

类是Java程序的基本构建块,对象是类的实例。

// 定义一个类
public class Person {// 类的属性private String name;private int age;// 类的构造方法public Person(String name, int age) {this.name = name;this.age = age;}// 类的方法public void sayHello() {System.out.println("Hello, my name is " + name + " and I am " + age + " years old.");}
}
// 创建对象并调用方法
Person person = new Person("张三", 25);
person.sayHello();

由于您没有具体说明需要哪方面的例子,我将基于Java编程语言的基础语法,给出几个不同方面的示例代码。这些示例涵盖了数据类型、变量、运算符、条件语句、循环语句等Java基础语法的关键方面。

数据类型示例

public class DataTypeExample {public static void main(String[] args) {// 基本数据类型byte byteVar = 100;short shortVar = 20000;int intVar = 1000000000;long longVar = 100000000000L;float floatVar = 1.234f;double doubleVar = 1.23456789;boolean booleanVar = true;char charVar = 'a';// 引用数据类型int[] array = {1, 2, 3, 4, 5};String str = "Hello World";// 输出变量值System.out.println(byteVar);System.out.println(shortVar);System.out.println(intVar);System.out.println(longVar);System.out.println(floatVar);System.out.println(doubleVar);System.out.println(booleanVar);System.out.println(charVar);System.out.println(array[3]);System.out.println(str);}
}

变量与赋值示例

public class VariableExample {// 成员变量int memberVar = 10;public static void main(String[] args) {// 局部变量int localVar = 20;// 给变量赋值int anotherVar = localVar + memberVar;// 输出变量值System.out.println(memberVar);System.out.println(localVar);System.out.println(anotherVar);}
}

运算符示例

public class OperatorExample {public static void main(String[] args) {int a = 10, b = 3;// 算术运算符System.out.println(a + b); // 加法System.out.println(a - b); // 减法System.out.println(a * b); // 乘法System.out.println(a / b); // 除法System.out.println(a % b); // 取余// 关系运算符System.out.println(a > b); // 大于System.out.println(a < b); // 小于System.out.println(a >= b); // 大于等于System.out.println(a <= b); // 小于等于System.out.println(a == b); // 等于System.out.println(a != b); // 不等于// 逻辑运算符boolean x = true, y = false;System.out.println(x && y); // 与System.out.println(x || y); // 或System.out.println(!x); // 非}
}

条件语句示例

public class ConditionExample {public static void main(String[] args) {int score = 75;// if语句if (score > 70) {System.out.println("Pass");} else {System.out.println("Fail");}// switch语句int day = 3;switch (day) {case 1:System.out.println("Monday");break;case 2:System.out.println("Tuesday");break;case 3:System.out.println("Wednesday");break;default:System.out.println("Other day");break;}}
}

循环语句示例

public class LoopExample {public static void main(String[] args) {// for循环for (int i = 0; i < 5; i++) {System.out.println("Iteration: " + i);}// while循环int j = 0;while (j < 5) {System.out.println("Iteration: " + j);j++;}// do-while循环int k = 0;do {System.out.println("Iteration: " + k);k++;} while (k < 5);}
}

以上示例代码展示了Java基础语法的多个方面,包括数据类型、变量、运算符、条件语句和循环语句的使用。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/55922.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

空间数据分析实验04:空间统计分析

实验概况 实验目的 了解空间统计分析的基本原理掌握空间统计分析的常用方法 实验内容 根据某村的土地利用数据和DEM数据&#xff0c;提取各村组耕地面积比例&#xff0c;并将其与村组平均坡度进行相关性分析&#xff0c;最后计算各村组单元的景观多样性指数。 实验原理与方…

鸿蒙网络编程系列30-断点续传下载文件示例

1. 断点续传简介 在文件的下载中&#xff0c;特别是大文件的下载中&#xff0c;可能会出现各种原因导致的下载暂停情况&#xff0c;如果不做特殊处理&#xff0c;下次还需要从头开始下载&#xff0c;既浪费了时间&#xff0c;又浪费了流量。不过&#xff0c;HTTP协议通过Range…

基于web的酒店客房管理系统【附源码】

基于web的酒店客房管理系统&#xff08;源码L文说明文档&#xff09; 目录 4 系统设计 4.1 系统概述 4.2系统结构 4.3.数据库设计 4.3.1数据库实体 4.3.2数据库设计表 5系统详细实现 5.1 用户信息管理 5.2 会员信息管理 5.3 客房信息管理 5.…

k8s系列-Rancher 上操作的k8s容器网络配置总结

Rancher 上操作的k8s容器网络配置总结 要在 Rancher 中配置Spring Boot 应用 ykhd-zhjgyw-xpwfxfjfl 服务&#xff0c;正确的配置方式如下&#xff1a; 1. 应用程序监听端口 在 application.yaml 文件中&#xff0c;配置的应用监听端口是 10001&#xff0c;并且应用的上下文…

【Linux】Shell概念、命令、操作(重定向、管道、变量)

文章目录 一、概念篇1、shell的概念2、shell的分类 二、命令篇1、cat2、echo3、ps4、grep4.1、匹配行首4.2、大小写 5、sed 三、操作篇1、自动补全2、查看历史命令3、命令替换4、重定向4.1、输入重定向4.2、输出重定向4.3、错误重定向 5、管道6、shell中的变量6.1、本地变量6.2…

JavaScript 数学运算与日期处理

JavaScript 提供了许多数学函数和日期处理方法&#xff0c;可以帮助我们在编程中进行数字计算和日期操作。 数学函数&#xff1a; Math.random(): 生成一个0到1之间的随机数。Math.round(x): 对x进行四舍五入取整。Math.floor(x): 对x进行向下取整。Math.ceil(x): 对x进行向上取…

依赖标签分类任务Smin值计算(蛋白质功能预测,GO标签)

前言 Smin是在蛋白质功能预测中比较流行的一个指标&#xff0c;具体由来我也不甚清楚&#xff0c;只是在最近复现的几篇论文中反复出现了&#xff0c;所以记录一下。 计算方法 &#xff08;图来自于PSPGO论文&#xff09; 其中&#x1d70f;表示阈值&#xff0c;t表示GO标签…

Maven入门到进阶:构建、依赖与插件管理详解

文章目录 一、Maven介绍1、什么是Maven2、Maven的核心功能 二、Maven核心概念1、坐标GAVP1.1、GroupId1.2、ArtifactId1.3、Version1.3.1、版本号的组成 1.4、Packaging 2、POM、父POM和超级POM2.1、POM (Project Object Model)2.1、父POM&#xff08;Parent POM&#xff09;2.…

django连接mysql数据库

存在问题&#xff1a; django如何连接mysql数据库 解决方案&#xff1a; 创建工程和项目APP&#xff1b;修改Django的settings.py文件&#xff08;根据自己的数据库配置信息修改&#xff09;&#xff1b; 并在setting.py文件中添加app DATABASES {default: {# ENGINE: djang…

python 爬虫 入门 二、数据解析(正则、bs4、xpath)

目录 一、待匹配数据获取 二、正则 三、bs4 &#xff08;一&#xff09;、访问属性 &#xff08;二&#xff09;、获取标签的值 &#xff08;三&#xff09;、查询方法 四、xpath 后续&#xff1a;登录和代理 上一节我们已经知道了如何向服务器发送请求以获得数据&#x…

关于SSD1306的OLED的显示的研究

文章目录 函数作用参数解释嵌套函数分析主代码分析逻辑流程总结 难点的解析&#xff1a;生成器的主要逻辑分解&#xff1a;每次生成的元组 (pixel_x, pixel_y, pixel_mask)&#xff1a;生成器的整体流程举例总结 反转后的文本绘制竖直布局有问题的旋转180度旋转坐标轴绘制矩形绘…

SVM(支持向量机)

SVM&#xff08;支持向量机&#xff09; 引言 支持向量机(Support Vector Machine,SVM)&#xff0c;可以用来解答二分类问题。支持向量(Support Vector)&#xff1a;把划分数据的决策边界叫做超平面&#xff0c;点到超平面的距离叫做间隔。在SVM中&#xff0c;距离超平面最近…

【配色网站分享】

个人比较喜欢收藏一些好看的插画、UI设计图和配色&#xff0c;于是有了此篇&#xff0c;推荐一些配色网站&#xff0c;希望能对自己和大家有些帮助。 1.uiGradients 一个主打渐变风网站&#xff0c;还可以直接复制颜色。 左上角的“show all gradients”可以查看一些预设的渐…

upload-labs靶场Pass-02

upload-labs靶场Pass-02 分析源码 $is_upload false; $msg null; if (isset($_POST[submit])) {if (file_exists(UPLOAD_PATH)) {if (($_FILES[upload_file][type] image/jpeg) || ($_FILES[upload_file][type] image/png) || ($_FILES[upload_file][type] image/gif)) …

搭建Golang gRPC环境:protoc、protoc-gen-go 和 protoc-gen-go-grpc 工具安装教程

参考文章&#xff1a; 安装protoc、protoc-gen-go、protoc-gen-go-grpc-CSDN博客 一、简单介绍 本文开发环境&#xff0c;均为 windows 环境&#xff0c;mac 环境其实也类似 ~ ① 编译proto文件&#xff0c;相关插件 简单介绍&#xff1a; protoc 是编译器&#xff0c;用于将…

excel 表格中url转图片

待处理的单元格通过如下公式获取目标格式&#xff1a; "<table><img src"&A4&" height20></table>" 然后下拉后获取多列的单元格转换结果&#xff0c; 然后将这些转换后的结果拷贝到纯文本文档中&#xff0c; 然后再将纯文本…

【高等数学】多元微分学 (一)

偏导数 偏导数定义 如果二元函数 f f f 在 x 0 , y 0 x_0,y_0 x0​,y0​ 的某邻域有定义, 且下述极限存在 lim ⁡ Δ x → 0 f ( x 0 Δ x , y 0 ) − f ( x 0 , y 0 ) Δ x \lim_{\Delta x\to 0} \frac{f(x_0\Delta x,y_0)-f(x_0,y_0)}{\Delta x} Δx→0lim​Δxf(x0​Δ…

音乐播放器-0.专栏介绍​

1.简介 本专栏使用Qt QWidget作为显示界面&#xff0c;你将会学习到以下内容&#xff1a; 1.大量ui美化的实例。 2.各种复杂ui布局。 3.常见显示效果实现。 4.大量QSS实例。 5.Qt音频播放&#xff0c;音乐歌词文件加载&#xff0c;展示。 6.播放器界面换肤。 相信学习了本专栏…

【力扣 | SQL题 | 每日5题】力扣2362, 2356, 2394, 2480, 2388

1. 力扣2362&#xff1a;生成发票 1.1 题目&#xff1a; 表: Products ------------------- | Column Name | Type | ------------------- | product_id | int | | price | int | ------------------- product_id 包含唯一值。 该表中的每一行显示了一个产品的 ID …

springboot中service和controller作用

在 Spring Boot 应用程序中,Service 层和 Controller 层各自承担着不同的职责。了解这两者的作用有助于更好地设计和组织应用程序。下面详细介绍 Service 层和 Controller 层的作用及其区别。 Controller 层的作用 处理 HTTP 请求: Controller 层主要负责接收来自客户端的 H…