当前位置: 首页 > news >正文

day02_计算机常识丶第一个程序丶注释丶关键字丶标识符

计算机常识

计算机如何存储数据

  • 计算机世界中只有二进制。那么在计算机中存储和运算的所有数据都要转为二进制。包括数字、字符、图片、声音、视频等。

进制

  • 进制也就是进位计数制,是人为定义的带进位的计数方法 

实例:

//	在java 中 可以使用不同的字母数字组合 来表示 不同进制的数 但是都会以10进制的值进行输出
public class Demo {public static void main(String[] args) {// 输出10进制的数System.out.println(3); // 3/*二进制数字组成:0-1进位规则:逢二进一二进制:0b或0B开头*/System.out.println(0B11);//3/*八进制:很少使用数字组成:0-7进位规则:逢八进一八进制:0开头 */System.out.println(011);//9/*十六进制数字组成:0-9,a-f进位规则:逢十六进一0x或0X开头*/System.out.println(0X11);//17}
}

计算机存储单位

  • 字节(Byte):是计算机信息技术用于计量存储容量的一种计量单位,一字节等于八位。位(bit):是数据存储的最小单位。也就是二进制。二进制数系统中,每个0或1就是一个位,叫做bit(比特),其中8 bit 就称为一个字节(Byte)。

转换关系如下图所示:

计算机如何表示数据

计算机数据的存储使用二进制补码形式存储,并且最高位是符号位,最高位1是负数,最高位0是正数。

规定:

正数的补码与反码、原码一样,称为三码合一。负数的补码与反码、原码不一样:

  • 负数的原码:把十进制转为二进制,然后最高位设置为1
  • 负数的反码:在原码的基础上,最高位不变,其余位取反(0变1,1变0)
  • 负数的补码:反码+1

例如:byte类型(1个字节,8位)

  • 25 ==> 原码 0001 1001 ==> 反码 0001 1001 -->补码 0001 1001
  • -25 ==>原码 1001 1001 ==> 反码1110 0110 ==>补码 1110 0111
如何存储字符
  • 在计算机的内部都是二进制的0、1数据,如何让计算机可以直接识别人类文字的问题呢?就产生出了编码表的概念。
  • 编码表就是将人类的文字和一个十进制数进行对应起来组成一张表格。之后计算机在把十进制转换为对应的二进制进行存储。
  • 将所有的英文字母,数字,符号都和十进制进行了对应,因此产生了世界上第一张编码表ASCII。
  • Unicode(统一码、万国码、单一码)是计算机科学领域里的一项业界标准,包括字符集、编码方案等。Unicode 是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。
  • Java中使用的字符集:Unicode字符集

入门程序

JDK安装完毕,可以开发我们第一个Java程序了。Java程序开发三步骤:编写编译运行

步骤一:编写Java源程序:

  1. 在任意目录下新建文本文件,完整的文件名修改为HelloWorld.java,其中文件名为HelloWorld,后缀名必须为.java
  2. 在文件中键入文本并保存,代码如下:
// HelloWorld是类名,后面的一对大括号,限定了类的范围public class HelloWorld {/*main是方法名,后面的小括号后的大括号,限定了方法的范围 main方法  程序的入口  由jvm调用*/public static void main(String[] args) {//打印输出一行语句叫Hello WorldSystem.out.println("HelloWorld");}
}

第一个HelloWord 源程序就编写完成了,但是这个文件是程序员编写的,JVM是看不懂的,也就不能运行,因此我们必须将编写好的Java源文件编译成JVM可以看懂的字节码文件 ,也就是.class文件。

步骤二:编译Java源文件

  • 在DOS命令行中,进入源文件所在的目录,使用javac命令进行编译。

实例:

编译成功后,命令行没有任何提示。打开源文件所在的目录,发现产生了一个新的文件 HelloWorld.class,该文件就是编译后的文件,是Java的可运行文件,称为字节码文件,有了字节码文件,就可以运行程序了。  

步骤三:运行Java程序

  • 在DOS命令行中,进入Java源文件的目录,使用java命令进行运行。

实例

HellWorld程序介绍

计算机怎么理解Java写好的这些指令的?

 注意事项:

  • Java语言是一门严格区分大小写的语言
  • Java中的符号都是英文格式的
  • 源文件中的括号只能成对出现
  • main方法是程序的入口,JVM会自动调用
  • 字符编码与字符解码不一致的时候,会出现乱码问题。
  • 如果类不是被public修饰,那么源文件名可以和类名不一致。如果这个类是public,那么要求源文件名必须与类名一致。
  • 我们建议大家,不管是否是public,都与源文件名保持一致,而且一个源文件尽量只写一个类,目的是为了好维护。
  • 一个源文件中可以有多个类,编译后会生成多个.class字节码文件。但是一个源文件只能有一个public的类。
  • 对代码进行修改后 一定要重新编译再运行才是修改的结果
  • 语句的结束 都是 ; 作为判定的
  • 文件名称的后缀必须是java结尾

注释

概念:我们使用自己熟悉的语言对代码进行解释和说明。

  • 目的:是让人们能够更加轻松地了解代码。为代码添加注释,是十分必须要的它不影响程序的编译和运行。
  • 编译: 将 .java文件 变为 .class文件 

Java中有单行注释、多行注释丶文档注释

  • 单行注释以 // 开头,以换行结束
  • 多行注释以 /*开头,以*/结束
  • 文档注释以/**开头,以*/结束

格式如下:

注意事项:

  • 多行注释不能嵌套 

下面我们对java程序进行注释

/**目标:掌握注释的使用。*/
public class HelloWorld {/**这是一个main方法程序必须写这个方法才可以跑起来*/public static void main(String[] args) {// 输出一行内容System.out.println("单行注释~~");/*我要输出很多行内容看看多行注释是否可以使用*/System.out.println("多行注释!");}
}

关键字

概念:程序中,Java已经定义好的单词,具有特殊含义

  • 关键字的特点:全部都是小写字母。
  • 关键字比较多,不需要死记硬背,学到哪里记到哪里即可。
  • HelloWorld案例中,出现的关键字有 public 、class 、 static 、 void 等,这些单词已经被Java定义好,具有特殊意义

标识符

简单的说,凡是程序员自己命名的部分都可以称为标识符。即给类、变量、方法、包等命名的字符序列,称为标识符。

标识符的命名规则(必须遵守,不符合规则,编译报错)

  • Java的标识符只能使用26个英文字母大小写,0-9的数字,下划线_,美元符号$
  • 不能使用Java的关键字(包含保留字)和特殊值
  • 数字不能开头
  • 不能包含空格
  • 严格区分大小写

标识符的命名规范(如果不符合规范,可以编译通过,但是会遭受鄙视)

  • 见名知意
  • 类名、接口名等:每个单词的首字母都大写形式:XxxYyyZzz,例如:HelloWorld,String,System等
  • 变量、方法名等:从第二个单词开始首字母大写,其余字母小写形式:xxxYyyZzz,例如:age,name,bookName,main
  • 包名等:每一个单词都小写,单词之间使用点.分割形式:xxx.yyy.zzz,例如:java.lang
  • 常量名等:每一个单词都大写,单词之间使用下划线_分割形式:XXX_YYY_ZZZ,例如:MAX_VALUE,PI

相关文章:

day02_计算机常识丶第一个程序丶注释丶关键字丶标识符

计算机常识 计算机如何存储数据 计算机世界中只有二进制。那么在计算机中存储和运算的所有数据都要转为二进制。包括数字、字符、图片、声音、视频等。 进制 进制也就是进位计数制,是人为定义的带进位的计数方法 实例: // 在java 中 可以使用不同…...

【Trick】IOS系统解决“未受信任的企业级开发者”问题

问题: 本人通过扫码下载了一个软件,下载完毕后出现以下提示: 解决方法: 这个主要是操作系统的问题,需要在设置里面更改,具体步骤如下: 【1】打开设置,选择【通用】 【2】选择【VP…...

理解 React 中的 ReactElement、children 和 ReactNode

1. 什么是 ReactElement? ReactElement 是 React 用来描述 UI 界面元素的最基本的对象,是构建虚拟 DOM 的核心元素。 定义:ReactElement 是不可变的对象,表示界面中的某个元素。它包含了用于渲染 UI 所需的信息,如元…...

纯血鸿蒙正式登场,华为这新机给我看傻了

从 vivo 率先开炮 X200 系列,手机的白热化战斗序幕马上也就要揭开了。 就在昨天,骁龙于夏威夷召开骁龙峰会。 性能提升和咱们以往的爆料差距不大。 只是高通又双叒叕给自己改名了。新命名为 Snapdragon 8 Elite,官方翻译是骁龙 8 至尊版。 …...

c语言中的%运算和/运算

在C语言中,%运算和/运算分别表示取模运算和除法运算。以下是它们的详细解释和用法: 1. % 运算(取模运算) 取模运算用于计算两个整数相除后的余数。语法如下: result a % b; a 是被除数。b 是除数。result 是 a 除…...

【MySQL】多表查询——内连接,左/右连接

目录 准备工作 1.多表查询 2.INNER JOIN(内连接) 2.1.笛卡尔积 1.2.笛卡尔积的过滤 1.3.INNER JOIN(显式内连接) 1.4.SELF JOIN(自连接) 3. LEFT JOIN(左连接) 3.1.一个例子…...

Naicat连接本地CentOS 7虚拟机上的MySQL数据库失败解决办法

注意:Navicat主机栏填的是Centos虚拟机的IP地址 一、检查mysql容器 确保网络正常、保证mysql容器处于运行中且用户名、密码和端口正确。 1、查看mysql容器是否运行 docker ps2、查看mysql容器详细信息,可查看端口 docker inspect mysql二、检查防火墙…...

transforms.Normalize((0.4914, 0.4822, 0.4465), (0.2023, 0.1994, 0.2010)的计算过程

cifar10数据集的众多demo中,在数据加载环节,transforms.Normalize((0.4914, 0.4822, 0.4465), (0.2023, 0.1994, 0.2010)这条指令是经常看到的。这是一个 PyTorch 中用于图像数据标准化的函数调用,它将图像的每个通道的值进行标准化处理&…...

Excel表格如何修改“打开密码”,简单几步,轻松搞定

在保护Excel文件的安全性时,设置打开密码是常见且有效的方式。然而,有时我们需要修改已经设置的打开密码,以确保文件安全性或更新密码信息。今天小编来分享一下修改Excel文件打开密码的方法,操作简单,一起来看看吧&…...

pandas 数据分析实战

一、pandas常用数据类型 series,带标签的一维数组。类似于字典,但是键作为索引。 datatimeindex,时间序列。 dataframe,带标签且大小可变的二维表格结构。 panel,带标签且大小可变的三维数组。 1.一维数组与操…...

antd vue 输入框高亮设置关键字

<highlight-textareaplaceholder"请输入主诉"type"textarea"v-model"formModel.mainSuit":highlightKey"schema.componentProps.highlightKey"></highlight-textarea> 参考链接原生input&#xff0c;textarea demo地址 …...

python——扑克牌案列

斗地主发牌程序&#xff1a; 模拟一个斗地主发牌程序&#xff0c;实现对三个玩家进行手牌的派发&#xff0c;实现功能&#xff1a; ********** 欢迎进入 XX 斗地主 ********** 请输入玩家姓名&#xff1a;<用户控制台输入 A> 请输入玩家姓名&#xff1a;<用户控制台输…...

Java最全面试题->Java基础面试题->JavaWeb面试题->Git/SVN面试题

文章目录 Git/SVN面试题Git和SVN有什么区别&#xff1f;SVN优缺点&#xff1f;Git优缺点&#xff1f;说一下Git创建分支的步骤&#xff1f;说一下Git合并的两种方法以及区别&#xff1f;Git如何查看文件的提交历史和分支的提交历史?什么是 git stash&#xff1f;什么是git sta…...

引进Menu菜单与新增验证上传图片功能--系统篇

我的迭代小系统要更新2点。一是后台需要引进一种导航&#xff0c;众多导航之中我选择了Menu菜单。二是上传图片接口需要新增验证上传图片环节。先看看更新2点后的效果 引进Menu菜单效果如下&#xff0c;这部分修改后台前端代码 引进Menu菜单后&#xff0c;Menu菜单的默认数据我…...

安装Python及pip使用方法详解

一、安装Python Python是一种广泛使用的高级编程语言&#xff0c;其安装过程相对简单。以下是具体步骤&#xff1a; 访问Python官网&#xff1a; 打开浏览器&#xff0c;访问Python的官方网站[python.org](https://www.python.org/)&#xff0c;确保下载的是最新版本的Python安…...

利用Arcgis进行沟道形态分析

在做项目的时候需要学习到水文分析和沟道形态分析的学习&#xff0c;所以自己摸索着做了下面的工作和内容。如有不对请多指正&#xff01;&#xff01; 一、沟道形态分析概述 沟道形态分析是水文分析的一个重要方面&#xff0c;用于研究河流的形态和特征。沟道形态分析可以帮助…...

Excel:vba实现筛选出有批注的单元格

实现的效果&#xff1a;代码&#xff1a; Sub test() Dim cell As RangeRange("F3:I10000").ClearlastRow Cells(Rows.Count, "f").End(xlUp).Row MsgBox lastrow For Each cell In Range("a1:a21")If Not cell.Comment Is Nothing ThenMsgBox…...

RabbitMQ 发布确认模式

RabbitMQ 发布确认模式 一、原理 RabbitMQ 的发布确认模式&#xff08;Publisher Confirms&#xff09;是一种机制&#xff0c;用于确保消息在被 RabbitMQ 服务器成功接收后&#xff0c;发布者能够获得确认。这一机制在高可用性和可靠性场景下尤为重要&#xff0c;能够有效防止…...

【面试题】什么是SpringBoot以及SpringBoot的优缺点

什么是SpringBoot以及SpringBoot的优缺点 什么是SpringBoot SpringBoot是基于Spring的一个微框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。 SpringBoot的优点 可以创建独立的Spring应用程序&#xff0c;并且基于其Maven或Gradle插件&#xff0c;可以创建可执…...

git区分大小写吗?如果不区分,那要如何设置?

git区分大小写吗&#xff1f;如果不区分&#xff0c;那要如何设置&#xff1f; "Git在文件名的大小写方面是区分大小写的&#xff0c;但在某些操作系统&#xff08;如Windows和macOS&#xff09;上&#xff0c;文件系统默认是不区分大小写的。这可能导致一些问题&#xf…...

2025年能源电力系统与流体力学国际会议 (EPSFD 2025)

2025年能源电力系统与流体力学国际会议&#xff08;EPSFD 2025&#xff09;将于本年度在美丽的杭州盛大召开。作为全球能源、电力系统以及流体力学领域的顶级盛会&#xff0c;EPSFD 2025旨在为来自世界各地的科学家、工程师和研究人员提供一个展示最新研究成果、分享实践经验及…...

蓝牙 BLE 扫描面试题大全(2):进阶面试题与实战演练

前文覆盖了 BLE 扫描的基础概念与经典问题蓝牙 BLE 扫描面试题大全(1)&#xff1a;从基础到实战的深度解析-CSDN博客&#xff0c;但实际面试中&#xff0c;企业更关注候选人对复杂场景的应对能力&#xff08;如多设备并发扫描、低功耗与高发现率的平衡&#xff09;和前沿技术的…...

srs linux

下载编译运行 git clone https:///ossrs/srs.git ./configure --h265on make 编译完成后即可启动SRS # 启动 ./objs/srs -c conf/srs.conf # 查看日志 tail -n 30 -f ./objs/srs.log 开放端口 默认RTMP接收推流端口是1935&#xff0c;SRS管理页面端口是8080&#xff0c;可…...

C# 类和继承(抽象类)

抽象类 抽象类是指设计为被继承的类。抽象类只能被用作其他类的基类。 不能创建抽象类的实例。抽象类使用abstract修饰符声明。 抽象类可以包含抽象成员或普通的非抽象成员。抽象类的成员可以是抽象成员和普通带 实现的成员的任意组合。抽象类自己可以派生自另一个抽象类。例…...

vue3+vite项目中使用.env文件环境变量方法

vue3vite项目中使用.env文件环境变量方法 .env文件作用命名规则常用的配置项示例使用方法注意事项在vite.config.js文件中读取环境变量方法 .env文件作用 .env 文件用于定义环境变量&#xff0c;这些变量可以在项目中通过 import.meta.env 进行访问。Vite 会自动加载这些环境变…...

ABAP设计模式之---“简单设计原则(Simple Design)”

“Simple Design”&#xff08;简单设计&#xff09;是软件开发中的一个重要理念&#xff0c;倡导以最简单的方式实现软件功能&#xff0c;以确保代码清晰易懂、易维护&#xff0c;并在项目需求变化时能够快速适应。 其核心目标是避免复杂和过度设计&#xff0c;遵循“让事情保…...

【生成模型】视频生成论文调研

工作清单 上游应用方向&#xff1a;控制、速度、时长、高动态、多主体驱动 类型工作基础模型WAN / WAN-VACE / HunyuanVideo控制条件轨迹控制ATI~镜头控制ReCamMaster~多主体驱动Phantom~音频驱动Let Them Talk: Audio-Driven Multi-Person Conversational Video Generation速…...

【从零开始学习JVM | 第四篇】类加载器和双亲委派机制(高频面试题)

前言&#xff1a; 双亲委派机制对于面试这块来说非常重要&#xff0c;在实际开发中也是经常遇见需要打破双亲委派的需求&#xff0c;今天我们一起来探索一下什么是双亲委派机制&#xff0c;在此之前我们先介绍一下类的加载器。 目录 ​编辑 前言&#xff1a; 类加载器 1. …...

智能职业发展系统:AI驱动的职业规划平台技术解析

智能职业发展系统&#xff1a;AI驱动的职业规划平台技术解析 引言&#xff1a;数字时代的职业革命 在当今瞬息万变的就业市场中&#xff0c;传统的职业规划方法已无法满足个人和企业的需求。据统计&#xff0c;全球每年有超过2亿人面临职业转型困境&#xff0c;而企业也因此遭…...

算术操作符与类型转换:从基础到精通

目录 前言&#xff1a;从基础到实践——探索运算符与类型转换的奥秘 算术操作符超级详解 算术操作符&#xff1a;、-、*、/、% 赋值操作符&#xff1a;和复合赋值 单⽬操作符&#xff1a;、--、、- 前言&#xff1a;从基础到实践——探索运算符与类型转换的奥秘 在先前的文…...