Java基础语法规范

语法规范

public class HelloWorld{ //类名: 1. 首字母要大写  2.  源文件名与类名相同
	
	// 单行注释

	/* 多行注释
		除这两个之外还有文档注释。不重要
		
	 * /
	public static void main (String[] args){  
		/* 
		1. main()⽅法是类体中的主⽅法,该⽅法从{开始到}结束。
		2. Java程序中的main()⽅法必须声明为:public static void ,
		3. 方法名应该小写字母开头
		*/
		
		System.out.println("Hello world");   // 输出hello world   每一行代码结束必须要有;
	}
}

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

java  HelloWorld.java  // 编译
java HelloWorld // 运行

数据类型

常见数据类型

  1. 基本数据类型
    1. 数值型
      1. 整数类型 :int byte short long
      2. 浮点类型 : float double
    2. 字符型(char)
    3. 布尔型(boolean)
  2. 引用数据类型
    1. 类 class
    2. 接口 interface
    3. 数组 String []

String不是⼀个数据类型,⽽是引⽤数据类型,属于Java提供的⼀个类

强制数据类型转换

  1. 当把⾼精度的变量的值赋值给低精度变量时,必须使⽤强制类型转换(⼜称为显式类型转换)
  2. 语法规则:(类型名)要转换的内容
  3. 低精度转换⾼精度会导致精度丢失
public class ChangeType { 
	public static void main(String[] args) { 
		int nNum = 10; double dNum = 10.8; 
		int ndNum = (int)dNum; 
		double dnNum = (double)nNum; 
		System.out.println("ndNum = "+ndNum); 
		System.out.println("dnNum = "+dnNum);
	}
}

运行结果:

ndNum=10
dnNum=10.0

变量和常量

声明变量

变量声明: 
1. 数据类型 变量名 [=] ;
2. 多个变量:数据类型 变量名1 ,变量名2 ; 

int a ,b, c   ;
double d = 1.0 ;

声明常量

常量 :Java使用final关键字修饰常量 final double PI =3.14;
常量一般用大写字母

变量类型

  1. 成员变量:作用域为整个类,可被权限修饰符修饰
  2. 局部变量:作用域为当前方法,不能被权限修饰符修饰
  3. 静态变量:作用域为整个类,使用static修饰,可以被权限修饰符修饰,其值在运行期间只有一个副本
  4. 参数变量:方法定义 变量,参数变量的作用域限于方法内部

123 变量:

public class RunoobTest {

    private int instanceVar = 10 ;    //成员变量:权限修饰符 变量类型 变量名
      
    private static int staticVar;  // 静态变量:权限修饰符 static 变量类型 变量名
    
    /*静态变量 (类变量 Class Var)

	 public class MyClass {  
	    public static int count = 0;  
	    // 其他成员变量和方法  
     }
   
	 
	 MyClass.count = 10; // 通过类名访问  
	 MyClass obj = new MyClass();  
	 obj.count = 20; // 通过实例名访问
    
    */

    public void method(int paramVar) {
        
        int localVar = 40;  // 局部变量:变量类型 变量名
        
        // 使用变量
        staticVar = paramVar;
        
        System.out.println("成员变量: " + instanceVar);
        System.out.println("静态变量: " + staticVar);
        System.out.println("参数变量: " + paramVar);
        System.out.println("局部变量: " + localVar);
    }
    
    public static void main(String[] args) {
        RunoobTest v = new RunoobTest();
        v.method(50);
    }
}

123 运行结果:

成员变量: 10
静态变量: 50
参数变量: 50
局部变量: 40

4 变量:

  • 值传递:在方法调用时,传递的是实际参数的值的副本。当参数变量被赋予新的值时,只会修改副本的值,不会影响原始值。Java 中的基本数据类型都采用值传递方式传递参数变量的值。
public class RunoobTest {
    public static void main(String[] args) {
        int a = 10, b = 20;
        swap(a, b); // 调用swap方法
        System.out.println("a = " + a + ", b = " + b); // 输出a和b的值
    }
    
    public static void swap(int x, int y) {
        int temp = x;
        x = y;
        y = temp;
    }
}

运行结果:

a = 10, b = 20
  • 引用传递:在方法调用时,传递的是实际参数的引用(即内存地址)。当参数变量被赋予新的值时,会修改原始值的内容。Java 中的对象类型采用引用传递方式传递参数变量的值。
public class RunoobTest {
    public static void main(String[] args) {
        int[] arr = {10, 20};
        swap(arr); // 调用swap方法
        System.out.println("a = " + arr[0] + ", b = " + arr[1]); // 输出a和b的值
    }
   
    public static void swap(int[] arr) {
        int temp = arr[0];
        arr[0] = arr[1];
        arr[1] = temp;
    }
}

运行结果:

a = 20, b = 10

对象和类

修饰符

https://www.runoob.com/java/java-modifier-types.html

运算符

https://www.runoob.com/java/java-operators.html

控制流程

判断

循环

函数定义与使用

参考

菜鸟教程
Java基础学习

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

OpenEuler 的安装过程记录

一、下载openEuler镜像 1.2 打开官网,选择openEuler23.09 1.3 选择架构、场景以及软件包类型 初次使用的话基本上都是先安装虚拟机,我们大部分主机都是x86_64架构,场景的话就选服务器,软件版类型选择标准版,可以安装图…

两数之和-第13届蓝桥杯选拔赛Python真题精选

[导读]:超平老师的Scratch蓝桥杯真题解读系列在推出之后,受到了广大老师和家长的好评,非常感谢各位的认可和厚爱。作为回馈,超平老师计划推出《Python蓝桥杯真题解析100讲》,这是解读系列的第76讲。 两数之和&#xf…

基恩士激光 速度 曝光等关系

一、基恩士 CtrlN 二、速度设置 计算扫描速度 曝光时间: 1:1 相机点间隔是0.025 ,我们要扫描的图像也是1:1的话,速度可以为 采样周期我们设定为3K,假如我们的7000行就够了 速度V0.025(线间隔&#xff0…

【python】OpenCV—Color Detection

学习来自 如何使用 OpenCV Python 检测颜色 import cv2 import numpy as npdef red_hsv(img, saveFalse):lower_hsv1 np.array([0, 175, 20])higher_hsv1 np.array([10, 255, 255])lower_hsv2 np.array([170, 175, 20])higer_hsv2 np.array([10, 255, 255])mask1 cv2.inR…

小家电增速超预期!赛盈分销谈市场发展机会,助力企业开拓新商机!

在家庭和商业场景的高需求下,小家电又成为了海外消费新宠。 Statista的数据显示,2023年全球小家电的市场规模达到了2430亿美元,预计未来的4年里市场年复合增长率为4.65%,到2028年市场规模将增长至3050亿美元。 特别是欧美和东南亚…

小短片创作-理论知识(四)

1、PBR材质基础参数 1.PBR材质的特征:BaseColor,Roughness,Metallic,Normal,Specular 2.BaseColor(Albedo):不包含光照信息 3.Roughness(粗糙度)&#xff…

Ubuntu (18.04) _Mysql (8.0.X)设置密码强度

首先 查看是否有密码强度插件: SHOW PLUGINS; 如果没有,则安装 install plugin validate_password soname validate_password.so; 再次查看,会看到密码强度插件已开 其次 查看密码强度具体配置 show variables like validate_password%; validate…

JVM思维导图

帮助我们快速整理和总结JVM相关知识,有结构化认识和整体的思维模型 JVM相关详细知识和面试题

农业大模型:关键技术、应用分析与发展方向

[目的/意义] 近年来,人工智能在农业领域的应用取得了显著进展,但仍面临诸如模型数据收集标记困难、模型泛化能力弱等挑战。大模型技术作为近期人工智能领域新的热点技术,已在多个行业的垂直领域中展现出了良好性能&…

【EFK日志系统】在kibana操作索引模板、生命周期、管道等

kibana界面设置 管道生命周期索引模板索引模式注意事项 之前已经搭建好了es集群、es-head信息面板、kibana、filebeat和metricbeat,但是其中的索引模板等信息你在kibana界面暂时看不到 接下来我们设置索引模式、索引模板、生命周期、管道限制等,简单写一…

商用未来何时来?软银揭示量子计算商业应用现状

内容来源:量子前哨(ID:Qforepost) 文丨沛贤/浪味仙 排版丨沛贤 深度好文:3000字丨10分钟阅读 摘要:软银(SoftBank)先进技术研究所正在积极推进量子计算商业应用,借助与…

使用python优雅的将PDF转为Word

使用python优雅的将PDF转为Word 先装这个优雅的库 pip install pdf2docx然后运行下面优雅的代码,将pdf路径和docx路径修改 from pdf2docx import Converter # path pdf_file C:\\Users\\phl\\Desktop\\软件工程期末\\软件工程模拟试题5.pdf docx_file C:\\User…

HTTP/超文本传输协议(Hypertext Transfer Protocol)及HTTP协议通信步骤介绍和请求、响应阶段详解;

目录 一、HTTP/超文本传输协议 特点和功能 请求-响应模型 版本和扩展 安全性和加密 二、HTTP协议通信步骤介绍 三、请求、响应阶段详解 HTTP请求 HTTP响应 示例 一、HTTP/超文本传输协议 HTTP/超文本传输协议(Hypertext Transfer Protocol)是…

对未知程序所创建的 PDF 文档的折叠书签层级全展开导致丢签的一种解决方法

对需要经常查阅、或连续长时间阅读的带有折叠书签的 PDF 文档展开书签层级,提高阅览导航快捷是非常有必要的。 下面是两种常用书签层级全展开的方法 1、 FreePic2Pdf 1 - 2 - 3 - 4 - 5 - 6,先提取后回挂 2、PdgCntEditor 载入后,直接保存…

如何快速的在线编辑pdf?6个软件让你轻松编辑pdf

如何快速的在线编辑pdf?6个软件让你轻松编辑pdf 在线编辑PDF文件是一项非常方便的任务,以下是六款让您轻松进行在线PDF编辑的软件: 嗨动PDF编辑器:这是一个功能强大的PDF编辑器,可以帮助您快速编辑PDF文档&#xff…

【稳定检索】2024年心理学与现代化教育、媒体国际会议(PMEM 2024)

2024年心理学与现代化教育、媒体国际会议 2024 International Conference on Psychology and Modern Education and Media 【1】会议简介 2024年心理学与现代化教育、媒体国际会议即将召开,这是一场汇聚全球心理学、教育及媒体领域精英的学术盛宴。 本次会议将深入探…

当一个小白拿到了香橙派 AIpro

当一个小白拿到了香橙派 AIpro 最近看见了香橙派 AIpro这块AI算法板,作为一块与华为合作的国产算力板,引起了我强烈的好奇心,可作为一名从未使用过香橙派,也未曾深究过AI算法的“小白”,来看我是如何征服这块新的领域…

【机器学习】随机森林:深度解析与应用实践

🌈个人主页: 鑫宝Code 🔥热门专栏: 闲话杂谈| 炫酷HTML | JavaScript基础 ​💫个人格言: "如无必要,勿增实体" 文章目录 随机森林:深度解析与应用实践引言1. 随机森林基础1.1 什么是随机森林…

谢宁DOE培训的课程大纲分享

谢宁DOE培训旨在深入讲解谢宁问题解决方法在质量管理中的重要作用,学会如何利用谢宁问题解决方法工具,在不中断生产过程的前提下,找出生产中碰到的复杂而顽固的问题的原因,从而彻底地解决问题。 【课程内容】 第一部分&#xff1…

K8S 证书过期不能使用kubectl之后,kubeadm 重新生成证书

查询证书过期时间 kubeadm certs check-expiration重新生成证书 # 重新生成所有证书 kubeadm certs renew all # 重新生成某个组件的证书 kubeadm certs renew 组件名称 如:apiserver生成新的配置 # 重新生成kubeconfig配置 kubeadm init phase kubeconfig # 重…