【一、测试基础】Java基础语法

Java 的用法及注意事项有很多,今天的目标是了解Java基础语法,且能够输出"hello world"

几个基础的概念

  • 对象:对象是类的一个实例,有状态和行为。一只猫是一个对象,猫的状态有:颜色、名字、品种;行为有:摇尾巴、叫、吃、抓老鼠等。

  • :类是一个模板,它描述一类对象的行为和状态。

  • 方法:方法就是行为,一个类可以有很多方法。逻辑运算、数据修改以及所有动作都是在方法中完成的

第一个Java程序

Hello World 已然成为了程序员入门必打印的一串字符,可以使用各种语言实现,下面用java来实现它

// 执行的main函数定义格式是固定的,参照格式编写就行
public static void main(String[] args) {System.out.println("Hello World");
}

打印一个Hello World的执行过程如下

  • 代码编写 -> javac编译生成字节码文件(.class文件) ->JVM 加载并验证字节码文件 ->运行执行

后续在测试的过程中,随着对java应用的加强,会讲到对应的方法执行过程与类加载的过程

Java基础语法

注释

相较于python,Java有一个是文档注释类型的注释。

// 单行注释使用双斜杠 "//"/**多行注释*//*** @author: shacha* @date: 2023-12-15 00:00* @description:文档注释,解释对应类,方法的使用,以及可能存在的参数释义*/

变量与数据类型

Java数据类型分为"基本数据类型"和"引用数据类型"

// 基本数据类型:共计有8种,byte, boolean, short, char int, float, long double
// 引用数据类型:类(Class)、接口(Interface)、数组(Array)、枚举(Enum)、字符串(String)

Java 变量主要分为三种"局部变量"、"类变量(类似于静态变量)"、"成员变量(非静态变量)"

修饰符

修饰符分为两种"访问控制修饰符"、"非访问控制修饰符"

// 访问控制修饰符 : default, public , protected, private// 非访问控制修饰符 : final, abstract, static, synchronized

标识符使用规则

  • 标识符都应该以字母(A-Z 或者 a-z),美元符($)、或者下划线(_)开始

  • 首字符之后可以是字母(A-Z 或者 a-z),美元符($)、下划线(_)或数字的任何字符组合

  • 标识符是大小写敏感的,且不能以关键字为标识符

Java三大特性

学习Java一定要知道Java有三大特性"封装"、"继承"、"多态"

  • 封装:将具体的方法逻辑以及操作步骤封装在一个单元中,对外提供接口访问,可以有效保护数据

// 调用的工具与方法封装成为一个整体类,类中包含各种方法
public class Circle {private double radius;public double getRadius() {return radius;}public void setRadius(double radius) {if (radius >= 0) {this.radius = radius;} else {System.out.println("半径不能为负数!");}}public double calculateArea() {return Math.PI * radius * radius;}
}// 调用封装好的方法与类实现个人需求
public class Main {public static void main(String[] args) {Circle circle = new Circle();circle.setRadius(5.0);System.out.println("半径:" + circle.getRadius());System.out.println("面积:" + circle.calculateArea());circle.setRadius(-2.0);System.out.println("半径:" + circle.getRadius());System.out.println("面积:" + circle.calculateArea());}
}
  • 继承:是一种通过从现有类派生出新类的机制。派生类(子类)可以继承基类(父类)的属性和方法,同时可以添加自己的特定功能。

例如动物类,可以派生出食草类动物①和食肉类动物②,①和②两类子类动物都继承了动物类的能吃能睡,且增加了自己的特性,吃肉还是吃素

  • 多态:多态是指同一个方法名可以在不同的对象上具有不同的行为。通常通过方法重写(override)和方法重载(overload)来实现这一特性,也就是继承或实现类与接口。

也可以使用一句话概括,即父类引用指向子类对象

例如父类Animal,子类Cat,Dog。其中Animal可以是类也可以是接口,Cat和Dog是继承或实现Animal的子类。Animal animal = new Cat();即声明的是父类,实际指向的是子类的一个对象。

写在后面

对于测试同学来说,Java可以多练习达到熟悉的水平,毕竟在做某些自动化测试和自动化测试平台的时候会使用java开发

同时,对于性能测试来说,java是很好的工具语言,它提供了强大的线程管理和并发库,且有对应的垃圾回收机制,并且生态系统良好,开发者社区提供了丰富的性能测试工具和框架

所以想要向着性能专职的同学可以多了解一些java的知识

作者简介:

程序员山茶,一个工作5年,并坚持探索测试之路的测试开发工程师。曾混迹于互联网大厂、IOTA行业领航企业、安全行业、大数据行业领航企业,欢迎和我一起沟通交流。


图片

欢迎关注我,我一起探索测试之路,终身成长

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

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

相关文章

公众号突破2个限制技巧怎么操作?

一般可以申请多少个公众号?目前企业主体只能申请2个公众号,这也意味着想做矩阵公众号的难度提升了。有些公司靠着诸多不同分工的公众号形成一个个矩阵,获取不同领域的粉丝。比如,目前主体为xx旗下公众号,共有30个&…

《动手学深度学习》学习笔记 第9章 现代循环神经网络

本系列为《动手学深度学习》学习笔记 书籍链接:动手学深度学习 笔记是从第四章开始,前面三章为基础知识,有需要的可以自己去看看 关于本系列笔记: 书里为了让读者更好的理解,有大篇幅的描述性的文字,内容很…

【自控实验】1. 线性系统串联超前校正实验

本科课程实验报告,有太多公式和图片了,干脆直接转成图片了 仅分享和记录,不保证全对 串联超前校正实验:频域设计计算(校正装置),时域观察验证(校正结果) 使用matlab中的simulink进行仿真

PyCharm中配置安装PyQt5、QtDesigner

PyCharm中配置安装PyQt5 使用 pip install PyQt5 命令安装。 安装pyqt5-tools:pip install pyqt5-tools 安装PyQt5Designer:pip install PyQt5Designer 上述三个都安装好之后,输入 pip list 查看一下 有如下内容就安装成功啦!…

【Linux Shell】5. 运算符

文章目录 【 1. 算术运算符 】1.1 expr 命令1.2 [ ] 方括号 【 2. 关系运算符 】【 3. 布尔运算符 】【 4. 逻辑运算符 】【 5. 字符串运算符 】【 6. 文件测试运算符 】 【 1. 算术运算符 】 运算符说明举例赋值a$b 把变量 b 的值赋给 a。 1.1 expr 命令 原生 bash 不支持简…

SpringCloud系列篇:核心组件之熔断器组件

🥳🥳Welcome Huihuis Code World ! !🥳🥳 接下来看看由辉辉所写的关于SpringCloud的相关操作吧 前言 在微服务架构中,一个应用往往由多个服务组成,这些服务之间相互依赖,依赖关系错综复杂。 例…

C++程序员必备的面试技巧

“程序员必备的面试技巧,就像是编写一段完美的代码一样重要。在面试战场上,我们需要像忍者一样灵活,像侦探一样聪明,还要像无敌铁金刚一样坚定。只有掌握了这些技巧,我们才能在面试的舞台上闪耀光芒,成为那…

经验分享:智能知识库才是数字时代的企业必备选择

随着全球化和竞争的加剧,企业必须通过将知识作为战略资产进行管理,才能保持竞争优势。因此,建设有效的知识库系统,成为了数字时代企业必备的选择。决定企业成功或失败的不再仅仅是产品或服务的质量,而是如何有效利用知…

element-ui 如何修改el-popconfirm的样式

改造之前效果 改造之后效果 代码&#xff1a; <style lang"scss"> .my-popconfirm {width: 92% !important;height: 130px !important;padding: 14px !important;font-size: 28px !important;.el-popper {font-size: 28px !important;}.el-popconfirm__main {…

【RabbitMQ】RabbitMQ高级:如何保证消息可靠性

目录 概述异常捕获机制事务机制持久化存储机制发送端确认机制概述开启发布确认的方法单个发布确认批量发布确认异步发布确认 消费端确认机制消息限流消息幂等性处理 概述 前面学习了如何简单使用RabbitMQ&#xff0c;在实际使用RabbitMQ时&#xff0c;我们还需要考虑很多&…

MySQL-外键等信息

38. 基础-多表查询-概述_哔哩哔哩_bilibili 1、流程函数 2、约束字段 删除外键 &#xff1a; alter table emp2 drop foreign key 外键名 //外键可以保持数据的一致性和完整性&#xff0c;外键的话&#xff0c;就是类似一个主表&#xff0c;一个从表&#xff0c;从表的其中一…

ROS2入门之节点与指令

文章目录 前言一、初识ROS21.ROS简介2.ROS系统框架 二、ROS2创建节点(CPP)1.创建工作空间2.创建功能包3.创建节点4.配置CMakeLists5.编译运行节点&#x1f353;编译节点&#x1f34a;source环境&#x1f34e; 运行节点 报错解决 三、ROS2常用指令1.ros2 pkg create2.ros2 pkg l…

mac 使用brew卸载node

1.查看当前的node版本 node -v 2.查看使用brew 安装的版本&#xff0c;可以看到本机装了14、16、18版本的node brew search node 3.卸载node brew uninstall node版本号 --force 如分别删除14、16、18版本的node命令如下 brew uninstall node14 --force brew uninstall no…

使用AutoDL云计算平台训练并测试Pytorch版本NeRF代码

文章目录 前言一、数据集及代码获取二、租用并设置服务器三、Pycharm远程开发四、训练并测试代码 前言 因为第一次在云服务器上跑代码&#xff0c;所以在这里记录一下。 一、数据集及代码获取 nerf-pytorch项目是 NeRF 的忠实 PyTorch 实现&#xff0c;它在运行速度提高 1.3 倍…

PLM系统功能、彩虹PLM系统功能、产品数据管理系统

彩虹PLM系统的功能 产品数据管理 产品数据管理是 PLM 系统的核心功能之一&#xff0c;它主要包括以下几个方面&#xff1a; &#xff08;1&#xff09;数据存储&#xff1a;将产品的设计数据&#xff08;如 CAD 模型、图纸、BOM 等&#xff09;存储在统一的数据库中&#xf…

springmvc内嵌tomcat、tomcat整合springmvc、自研国产web中间件

springmvc内嵌tomcat、tomcat整合springmvc、自研国产web中间件 这是由于公司老项目转化springboot存在太多坑&#xff0c;特别是hibernate事务一条就坑到跑路&#xff0c;你又不想搞没听说过的国产中间件兼容&#xff0c;又不想搞weblogic、WebSphere等中间件的适配&#xff…

Gitlab中的CICD的使用方法

一、CI/CD执行机制 二、离线安装gitlab-runner 下载相应版本的gitlab-runner &#xff08;下载地址&#xff1a;https://packages.gitlab.com/runner/gitlab-runner&#xff09; dpkg -i gitlab-runner_12.8.0_amd64.debgitlab-runner register第3步中需要的信息可从下图所示…

AMEYA360报导:瑞萨宣布收购Transphorm,大举进军GaN

全球半导体解决方案供应商瑞萨电子与全球氮化镓(GaN)功率半导体供应商Transphorm, Inc.(以下“Transphorm”)于今天宣布双方已达成最终协议&#xff0c;根据该协议&#xff0c;瑞萨子公司将以每股5.10美元现金收购Transphorm所有已发行普通股&#xff0c;较Transphorm在2024年1…

Next.js 学习笔记(六)——缓存

缓存 Next.js 可通过缓存渲染工作和数据请求来提高应用程序的性能并降低成本。本页将深入介绍 Next.js 缓存机制、可用于配置这些机制的 API 以及它们之间的交互方式。 需要知道&#xff1a;本页将帮助你了解 Next.js 的工作原理&#xff0c;但这并不是使用 Next.js 提高工作效…

【VMware】Windows部署单机OA项目---图文并茂详细讲解

目录 一 准备工作 二 安装JDK 三 tomcat安装 ​四 MySQL安装 ①解压MySQL压缩包 ②my文件拷贝mysql安装根目录下 ③ 修改my文件 ④ 安装MySQL 4.1 注册mysql服务 4.2 初始化 4.3 启动MySQL 4.4 登入MySQL 4.5 修改默认的MySQL密码 五 连接MySQL 5.1 虚拟机连接MyS…