首页 > 编程语言 >java入门概念

java入门概念

时间:2025-01-23 19:27:53浏览次数:3  
标签:字符 运算 java 入门 int 运算符 概念 字节

第一章:java概述

基本概念:

  • 什么是程序?计算机如何执行程序?

    计算机可识别的有序指令集,将源文件编译为目标文件,将目标文件和库文件等资源链接形成可执行文件,计算机执行这个文件的指令

  • java重要特点:

    1,面对对象的(oop)

    2,健壮的

    3,跨平台 windows/Linux (编译后都可用 通过jvm实现)

    4,解释型(编译后需解释器执行)

  • Java核心机制-java虚拟机JVM

    1,一个虚拟计算机,具有指令集并使用不同存储区域。负责执行指令,管理数据,内存,寄存器,包含在jdk中

    2,不同平台虚拟机不同

    3,屏蔽了底层运行平台的差别,一次编译到处运行

  • JDK即java开发工具包

    1,JDK=JRE+java开发工具

    2,JRE-JAVA运行环境=JVM+JAVA的核心类库

一,Java程序运行的过程

①编写.java文件

(源文件)

②javac编译.class文件

(字节码文件)

③java运行类

注:1.类目和文件名一致 2.语言切换编码保存 3.运行类名

  • 1,什么是编译?什么是运行?(jvm)

    编译:将.java文件编译为jvm能识别的字节码文件

    运行:将.class文件装载到jvm中执行

  • 2,有哪些规范?8

    ①源文件的扩展名为.java。基本组成部分是类clas

    ②执行入口是main()方法: public static void main(String[] args){…}

    ③严格区分大小写

    ④java方法由语句组成,每个以;结束

    ⑤大括号必须成对出现

    ⑥一个源文件最多有一个public类,其他不限

    ⑦有public类时,文件名必须与其一致

    ⑧main方法也可以写在其他类中,每一个类对应一个字节码文件

二,转义字符

\t:制表位,对齐

\n:换行符

\\

\’

\”

\r

三,文档注释

  • 格式

    /** *@标签 */

生成指令: javadoc-d 注释文件生成路径 -标签 源文件名

四,java代码规范 7

1,类,方法的注释——javadoc

2,非doc注释,用于维护时,为什么,怎么改,注意

3,用table键调整代码位置,不用空格

4,符号两边加上空格

5,源文件用utf-8

6,行宽少于80字符

7,次行风格与行尾风格

五,dos基本原理

DOS:Disk Operating System磁盘操作系统

相对路径:从当前目录开始定位形成的路径

绝对路径:从顶级目录开始定位形成的路径

  • 指令集

    1,dir——查看当前目录内容

    2,cd——切换到其他盘 cd /D c:

    3,cd——切换到当前盘的其他目录

    4,cd..——切换到上一级目录

    5,cd/——切换到根目录

    6,tree——查看当前目录的所有子目录

    7,cls——清屏

    8,exit——退出

    9,md——创建目录

    10,rd——删除目录

    11,copy——拷贝文件

第二章:变量

变量是程序的基本组成单位,基本三要素:类型,名称,值;定义变量就是分配空间

概念:内存中一个数据存储空间的表示 使用:声明,赋值,调用

注意:

1,不同变量类型不同,占空间大小不同

2,区域必须有名称和类型

3,必须先声明后使用

4,该区域数据可以在类型范围内不断变化

5,变量在同一个作用域不能重名‘

6,三要素

加号的使用:

1,两边数值做加法运算

2,有一边是字符做拼接运算

数据类型:

基本数据类型:数值:6,字符:1,布尔:1

引用数据类型:类,接口,数组

整数类型:

字节byte:1字节

短整型short:2字节

整型int:4字节

长整型long:8字节

  • 使用细节:

    1,整数类型有固定范围和字段长度,不受os影响

    2,整型常量默认为int,声明long常量后须加l或L

    3,bit:位,计算机最小存储单位,byte:计算机基本存储单元

浮点型:

单精度float:4字节

双精度double:8字节

  • 使用细节:

    1,存放形式:浮点数=符号位+指数位+尾数位

    2,尾数位部分可能丢失,造成精度损失

    3,固定范围和字段长度,不受os影响

    4,浮点型常量默认为double,声明float常量后须加f或F

    5,结果为小数的值判断相等,要用差值范围来判断相等,二进制的精度问题

字符型:

char:2字节

  • 使用细节:

    1,字符常量用单引号括起来的单个字符‘’(不能用“”)

    2,\n这样的字符是转义字符,代表单个字符

    3,char本质是一个整数,输出对应Unicode码对应的字符

    4,char可以进行运算,用Unicode码运算

  • 本质

    存储:字符——码值——二进制——存储

    读取:二进制——码值——字符——显示

  • 编码表:字符和码值的对应关系

    ASCII:一个字节表示128个字符,空余128字符——用于英文

    Unicode:两个字节,字母汉字都占两个字节——所有文字

    utf-8:字母一字节,汉字3字节——根据不同符号变化字节数

    gbk:字母一字节,汉字两字节

    big5:繁体中文

Boolean布尔类型:

boolean:一个字节,只允许取true和false,不能是0,1,null

适用于逻辑运算,一般用于程序流程控制

  • 使用细节:

自动类型转换

Java程序在赋值或者运算时,精度小的类型自动转换为精度大的数据类型

  • 转换路线:

    1,char-int-long-float-double

    2,byte-short-int-long-float-double

  • 使用细节

    1,多种混合转化,先都转化为最大类型然后计算

    2,大-小:报错;小-大:自动转换(byte的范围判断具体数赋值除外)

    3,byte和short不能和char自动转换

    4,byte,short,char的混合计算包括自我计算都转化为int

    5,布尔类型不参与转换

    6,计算结果自动转换为最大类型

强制类型转换】

自动类型转换的逆过程,将容量大的数据类型转换为容量小的数据类型,要加上(),但可能造成精度降低或者溢出

  • 使用细节

    1,强转符号只对最近的操作数有效

    2,char可以保存int常量值,但不能保存int变量值,需要强转

基本数据类型和string类型转换

基本类+“”转换为string

parse方法转换基本类(字符类型取字符串第一个)

  • 注意事项:

    1,格式不正确会导致异常,可编译但运行报错

API文档:

Application Programming Interface应用程序编程接口(写好的工具供你使用)

java类的组织形式:JDK——包——接口,异常,类——字段,构造器,成员方法 

API使用方法:

1,包——类——方法

2,直接搜索

第三章:运算符

运算符是一种符号,用以表示数据的运算,赋值和比较

用内存分析法分析代码

算术运算符

image.png

取模的计算式:a%b=a-a/b*b

image.png

赋值采用临时变量

关系运算符(比较运算符)

image.png

关系表达式的结果是布尔值

逻辑运算符

image.png

短路运算效率高,后面条件不一定判断

逻辑运算符结果也是布尔值

赋值运算符

将某个运算后的值赋给指定的变量

a+=b→a=a+b

  • 特点:

    1,运算顺序从右向左

    2,左边只能是变量,右边常量,变量或者表达式

    3,复合赋值运算符会自动进行类型转换

三元运算符

条件表达式 ?表达式1 :表达式2

返回值:T-1,F-2(不返回的不执行)

  • 使用细节

    1,要随时注意返回类型

    2,可以转换为if-else语句

    3,可求最值

运算符优先级

1,括号

2,单目

3,算数

4,位移

5,比较

6,逻辑

7,三元

8,赋值

标识命名规则规范

标识符:对各种变量,方法和类等命名时使用的字符序列称为标识符

  • 命名规则

    1,26个大小写英文字母,数字,

    2,数字不能开头

    3,不可以用关键字或者保留字,但可以包含

    4,严格区分大小写

    5,标识符不能包含空格

  • 命名规范

    1,包名:多个单词组成,字母都小写

    2,类名,接口名(大驼峰):多单词组成,所有单词首字母大写

    3,变量名,方法名(小驼峰,驼峰法):多单词组成,首单词首字母小写,其余大写

    4,常量名:所有字母大写,多单词下划线连接

关键字

定义:被java赋予了特殊意义,是有专门用途的字符串

特点:所有字母都是小写

键盘输入语句

用来接收用户输入的数据,需要一个扫描器scanner(对象)

  • 步骤

    1,导入该类的所在包: import java.util.Scanner;

    2,创建该类对象(声明变量): Scanner myScanner = new Scanner(System.in);

    3,调用功能:输入的值给一个类型 int age = myScanner.nextInt();

第四章:进制

  • 对于整数有四种表示方式:

    1,二进制:满2进1,以0b(0B)开头

    2,八进制:满8进1,以0开头

    3,十进制:满10进1

    4,十六进制:满16进1,0~F(f),以0x(X)开头

进制转换:

  • 一,转十进制

    最低位乘n 位数-1次方求和

  • 二,十进制转

    除n直到商为0,将余数倒置

  • 三,二进制转

    1,转8,三位一组转换

    2,转16,四位一组转换

  • 四,转二进制

    1,将一位8进制数转为三位二进制数

    2,将一位16进制数转为四位二进制数

位运算符(二进制形式运算)

Java中有7个位运算符:&,|,^,~,>>,<<,>>>

1,按位与:两位全为1,结果为1,否则为0

2,按位或:两位有一位为1,结果为1,否则为0

3,按位异或:两位一位为1,一位为0,结果为1,否则为0

4,按位取反:1,0转换

5,算术右移:低位溢出,符号位不变,用符号位补溢出的高位(除2)

6,算术左移:符号位不变,低位补0(乘2)

7,逻辑右移:低位溢出,高位补0

原码,反码,补码:

  • 规则

    1,最高位是符号位

    2,正数三码合一

    3,负数反码:符号位不变,其余取反

    4,负数补码:反码+1

    5,0的反码,补码都是0

    6,java中数都是有符号的

    7,计算机运算都是以补码运行

    8,运算结果看原码

标签:字符,运算,java,入门,int,运算符,概念,字节
From: https://blog.csdn.net/weixin_73684015/article/details/145311410

相关文章

  • 【Neo4j知识图谱数据库】入门
    在当今大数据和人工智能的时代,知识图谱作为一种高效的数据表示和查询方式,逐渐受到广泛关注。本文将带大家从入门到精通,了解知识图谱及其存储工具Neo4j的方方面面,包括知识图谱的介绍、Neo4j的特点、安装步骤、具体的使用方法(创建、查询),以及Cypher查询语言的详细讲解。一、知识图......
  • 使用 Java 和 Tesseract 实现验证码识别
    验证码是防止自动化操作的重要手段,而OCR(光学字符识别)技术使得识别验证码成为可能。在本文中,我们将使用Java和TesseractOCR引擎,开发一个简单的验证码识别工具。环境准备安装TesseractOCR在开始之前,你需要安装TesseractOCR,这是实现光学字符识别的核心工具。Windows:......
  • CSS入门学会这一篇就够了(上)
    目录一、CSS简介1、HTML的局限性2、CSS-网页的美容师3、CSS的语法规范 二、CSS基础选择器1、CSS选择器的作用2、选择器分类2.1标签选择器2.2类选择器2.3id选择器2.4通配符选择器 2.5基础选择器总结一、CSS简介1、HTML的局限性        说起HTM......
  • Java方法
    Java方法例如:System.out.println();---->分别为(类.对象.方法)Java方法是语句的集合。它们在一起执行一个功能。方法是解决一类问题的步骤的有序组合方法包含于类或对象中方法在程序中被创建,在其他地方被引用设计方法的原则:一个方法只完成一个功能,这样有利于我们后期的......
  • Three.js 入门篇
    一、Three.js是什么Three.js是一款基于原生WebGL封装通用Web3D引擎,在小游戏、产品展示、物联网、数字孪生、智慧城市园区、机械、建筑、全景看房、GIS等各个领域基本上都有three.js的身影二、Three.js快速入门基础三部曲:场景Scene、相机Camera、渲染器Renderer,了......
  • 详细剖析Java动态线程池的扩容以及缩容操作
    前言在项目中,我们经常会使用到线程来处理加快我们的任务。但为了节约资源,大多数程序员都会把线程进行池化,使用线程池来更好的支持我们的业务。Java线程池ThreadPoolExecutor有几个比较核心的参数,如corePoolSize、maximumPoolSize等等。无论是在工作中还是在面试中,都会被问到,如何......
  • 探索JavaScript前端开发:开启交互之门的神奇钥匙(二)
     目录 引言四、事件处理4.1事件类型4.2事件监听器五、实战案例:打造简易待办事项列表5.1HTML结构搭建5.2JavaScript功能实现六、进阶拓展:异步编程与Ajax6.1异步编程概念6.2Ajax原理与使用七、前沿框架:Vue.js入门窥探7.1Vue.js简介7.2基础使用示......
  • Java 反射
    目录概述反射机制反射机制原理类加载概述类加载的时机:类加载各阶段完成的功能加载阶段连接阶段——验证连接阶段——准备连接阶段——解析初始化阶段Class类方法一:直接通过一个类class中的静态变量class获取:方法二:如果我们有一个类class的对象,可以通过该对象引用提供的get......
  • Java 泛型
    目录泛型概述使用泛型的好处泛型的定义与使用定义和使用含有泛型的类含有泛型的方法含有泛型的接口定义类时确定泛型的类型始终不确定泛型的类型,直到创建对象时,确定泛型的类型泛型通配符通配符基本使用通配符高级使用----受限泛型泛型概述在前面学习集合时,我们都知道集合中是可......
  • [新]Java8的新特性
    原文首发在我的博客:https://blog.liuzijian.com/post/86955c3b-9635-47a0-890c-f1219a27c269.html1.Lambda表达式lambda表达式是Java8的重要更新,lambda表达式可以用更简洁的代码来创建一个只有一个抽象方法的接口(函数式接口)的实例,从而更简单的创建匿名内部类的对象。语法和......