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

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

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

相关文章

[PHP]Undefined index错误只针对数组

1、示例一 <?php $a null; var_dump($a[name]); 结果&#xff1a;无报错 2、示例二 <?php $a []; var_dump($a[name]);结果&#xff1a;报错

【JavaEE初阶】深入理解网络编程—使用UDP协议API实现回显服务器

前言 &#x1f31f;&#x1f31f;本期讲解关于TCP/UDP协议的原理理解~~~ &#x1f308;感兴趣的小伙伴看一看小编主页&#xff1a;GGBondlctrl-CSDN博客 &#x1f525; 你的点赞就是小编不断更新的最大动力 &#x1f386;那么废话不…

JMeter 中两大高级线程组的区别与应用

一、JMeter 中的高级线程组概述 最近群里的测试小伙伴在问在 JMeter 中&#xff0c;“jpgc - Ultimate Thread Group”和“jpgc - Stepping Thread Group 阶梯加压”有哪些区别和实际应用场景有哪些&#xff1f;所以这里也跟大家分享一下 JMeter 作为一款强大的性能测试工具&a…

Java项目-基于Springboot的应急救援物资管理系统项目(源码+说明).zip

作者&#xff1a;计算机学长阿伟 开发技术&#xff1a;SpringBoot、SSM、Vue、MySQL、ElementUI等&#xff0c;“文末源码”。 开发运行环境 开发语言&#xff1a;Java数据库&#xff1a;MySQL技术&#xff1a;SpringBoot、Vue、Mybaits Plus、ELementUI工具&#xff1a;IDEA/…

基于SpringBoot网上超市的设计与实现(论文+源码)_kaic

摘 要 网络技术和计算机技术发展至今&#xff0c;已经拥有了深厚的理论基础&#xff0c;并在现实中进行了充分运用&#xff0c;尤其是基于计算机运行的软件更是受到各界的关注。加上现在人们已经步入信息时代&#xff0c;所以对于信息的宣传和管理就很关键。因此超市商品销售信…

100 种下划线 / 覆盖层动画 | 终极 CSS(层叠样式表)集合

还在为你的菜单项和链接寻找动画效果而感到疲惫吗&#xff1f; 不用再找了&#xff01;这里列出了 100 多种不同的动画。从简单的到更复杂的&#xff0c;你肯定能找到自己想要的。 无需 SVG&#xff08;可缩放矢量图形&#xff09;&#xff0c;无需 JavaScript&#xff08;脚…

小白也能剪出优秀视频:四大视频剪辑工具推荐!

无论是社交媒体上的短视频分享&#xff0c;还是专业制作的长视频内容&#xff0c;视频剪辑工具都扮演着至关重要的角色。今天&#xff0c;就让我们来探讨几款市面上流行的视频剪辑工具。 福昕视频剪辑 直达链接&#xff1a;www.pdf365.cn/foxit-clip/ 操作教程&#xff1a;立…

使用Diffutoon把视频转换成动漫风格,无需部署,开箱即用

无论是图片动漫转换以及视频动漫转换&#xff0c;我们前期也介绍过相关的模型&#xff0c;但是其模型输出的动漫视频不是有瑕疵&#xff0c;就是动漫效果不唯美&#xff0c;今天介绍一个modelscope社区开源的动漫风格转换模型Diffutoon。 Diffutoon模型接受视频作为输入&#x…

【C语言】循环中断break

在循环使用过程中&#xff0c;可能遇到某些情况需要终止循环。比如按座位查找一位学生&#xff0c;循环查找&#xff0c;找到时可以直接停止。后续的循环将不再执行。 break;只跳出一层循环 例子中的素数判断&#xff0c;查找到根号n停止&#xff1a;一个合数等于两个数的乘积…

新手必须掌握的Linux命令

1.1 常用系统工作命令 echo [linuxprobelocalhost /]$ echo $SHELL /bin/bash 使用$变量的方式提取SHELL的值&#xff0c;并输出到到屏幕上 date [linuxprobelocalhost /]$ date -s "20170901 8:30:00" 将系统时间设置为 reboot ----系统重启命令poweroff --…

JavaWeb Servlet--09深入:注册系统05---动态搜索栏

动态搜索栏 分析&#xff1a;在显示用户信息的表单里有一个下拉框选择用户的信息&#xff0c;一个文本框进行输入&#xff0c;一个按钮就行搜索&#xff0c;在下拉框选择了性别或许姓名的某一个包含字就会返回所有满足的用户。在controller层进行接收选择的搜索条件&#xff0…

Starrocks部署前期准备

前提条件 硬件要求 CPU StarRocks 依靠 AVX2 指令集充分发挥其矢量化能力。因此&#xff0c;在生产环境中&#xff0c;强烈建议您将 StarRocks 部署于 x86 架构 CPU 的服务器上。 您可以在终端中运行以下命令来检查 CPU 是否支持 AVX2 指令集&#xff1a; cat /proc/cpuin…

【深度学习】RNN的简单实现

目录 1.RNNCell 2.RNN 3.RNN_Embedding 1.RNNCell import torchinput_size 4 hidden_size 4 batch_size 1idx2char [e, h, l, o] x_data [1, 0, 2, 2, 3] # 输入&#xff1a;hello y_data [3, 1, 2, 3, 2] # 期待&#xff1a;ohlol# 独热向量 one_hot_lookup [[1, …

如何使用Python合并Excel文件中的多个Sheet

在日常工作中&#xff0c;我们经常会遇到需要处理多个Excel工作表&#xff08;Sheet&#xff09;的情况。比如&#xff0c;一个Excel文件中包含了一个月内每天的数据&#xff0c;每个工作表代表一天。有时候&#xff0c;为了方便分析&#xff0c;我们需要将这些分散的数据合并到…

数据结构单向链表的插入和删除(一)

链表 一、链表结构&#xff1a; &#xff08;物理存储结构上不连续&#xff0c;逻辑上连续&#xff1b;大小不固定&#xff09;二、单链表&#xff1a;三、单项链表的代码实现&#xff1a;四、开发可用的链表&#xff1a;四、单链表的效率分析&#xff1a; 一、链表结构&#x…

Javaweb基础-vue

Vue.js Vue是一套用于构建用户界面的渐进式框架。 起步 引入vue <head><script src"static/js/vue2.6.12.min.js"></script> </head> 创建vue应用 <body> <div id"index"><p>{{message}}</p> </div>…

Vulnhub:Me-and-My-Girlfriend-1

一.环境启动/信息收集 &#xff08;1&#xff09;根据物理地址用nmap的主机发现功能得出IP地址 nmap -P 192.168.138.0/24 //同网段下主机发现得到IP为192.168.138.180&#xff08;2&#xff09;做nmap的目录扫描和端口扫描来发现其他站带以及信息 nmap -p- 192.168.138.180 …

CTF(五)

导言&#xff1a; 本文主要讲述在CTF竞赛中&#xff0c;web类题目easyphp。 靶场链接&#xff1a;攻防世界 (xctf.org.cn) 参考文章原文链接&#xff1a;Web安全攻防世界05 easyphp&#xff08;江苏工匠杯&#xff09;_攻防世界 easyphp-CSDN博客 一&#xff0c;观察页面。…

玄机平台-应急响应-webshell查杀

首先xshell连接 然后进入/var/www/html目录中&#xff0c;将文件变成压缩包 cd /var/www/html tar -czvf web.tar.gz ./* 开启一个http.server服务&#xff0c;将文件下载到本地 python3 -m http.server 放在D盾中检测 基本可以确认木马文件就是这四个 /var/www/html/shell.p…

动态规划-子数组系列——乘积最大子数组

1.题目解析 题目来源&#xff1a;152.乘积最大子数组——力扣 测试用例 2.算法原理 1.状态表示 由于题目给的数组中可以包含负数&#xff0c;因此求最大乘积有两种情况&#xff1a; a.负数乘以最小数得出最大乘积 b.整数乘以最大数得出最大乘积 所以需要两个表分别求出最大最…