首页 > 编程语言 >java基础知识

java基础知识

时间:2022-10-22 01:00:07浏览次数:50  
标签:字符 java 变量 int 基础知识 运算符 首字母 类型

JAVA基础知识

标识符和关键字

  • 关键字

java关键字

  • 标识符

    无论类名、方法名、变量名都是标识符

    命令规则:

    • 所有标识符都应该以大小写字符、美元符号、或下划线开始
    • 首字符后可以十字母、美元符号、下划线或者数字的任意组合
    • 不可以用关键字作为变量名

数据类型

java是强类型语言:所有变量必须先定义才能使用

java的数据类型分为两大类:

  • 基本类型:整数(int byte short long:数字后要加一个L)、浮点(float后面加一个F,double)、字符、布尔
  • 引用类型:类、接口、数组

数据类型拓展:

  • 整数拓展:进制

    二进制0b 八进制0 十六进制0x

    int i = 0b10;//二进制
    int i1 = 010;//八进制
    int i2 = 0x10;//十六进制
    
  • 浮点数拓展:

    float:有限 离散 舍入误差 大约 接近但不等于

    最好完全避免使用浮点数进行比较,使用BigDecimal

  • 字符拓展:所有的字符本质还是数组 Unicode编码 2字节

  • 转义字符:\t制表符 \n换行

强制转换

强制转换:高--低 自动转换:低--高

byte(-127~127),short,char -> int(正负20亿) -> long -> float -> double

注意点

       - 不能对布尔类型进行转换
       - 不能把对象类型转换为不相关类型
       - 在把高容量转换为低容量时,强制转换
       - 转换时可能存在内存溢出、或者精度问题

变量

变量是程序最基础的存储单元,其要素包括变量名,变量类型和作用域

变量作用域

  • 类变量:加关键字static,从属于类

  • 实例变量:作用域从属于对象,类里面,方法外,数值化默认初始化值为0,布尔值默认是false,除了基本类型其余的默认值都是null

  • 局部变量:是在方法或方法块里,使用前必须声明和初始化值

    补充:类变量和实例变量区别

    静态变量(类变量)具备以下特点:

    随着类的加载而加载
    优先于对象存在
    被所有对象所共享
    可以直接被类名调用

    类变量和实例变量的区别是:

    1,存放位置。

    类变量随着类的加载而存在于方法区中。

    实例变量随着对象的建立而存在于堆内存中。

    2,生命周期:

    类变量生命周期最长,随着类的消失而消失。

    实例变量生命周期随着对象的消失而消失。

常量

初始化后不能再改变值,一般用大写字符表示

定义:使用final关键字,修饰符不存在先后顺序,变量类型前面的都是修饰符

命令规范

  • 类成员变量:首字母小写和驼峰原则(首字母大写)

  • 局部变量:首字母小写和驼峰

  • 常量:大写字母加下划线

  • 类名:首字母大写和驼峰原则

  • 方法名:首字母小写和驼峰原则

基本运算符

算术运算符、辅助运算符(=)、关系运算符、逻辑运算符、位运算符、条件运算符(?:)

注意:

  • 自增运算符
int b = a++;//执行完这行代码后,先给b赋值,再自增
int b = ++a;//执行完这行代码前,先自增,再给b赋值
  • 幂运算

    使用工具类Math.pow(a,b)

  • 右移和左移
    右移(>>)相当于除以2,左移(<<)相当于乘以2

  • 位运算效率高

  • 只要+符号前面出现了字符串类型,后面的+都会自动变成字符串连接符

  • x?y:z//如果x==true,则结果为y,否则结果为z
    

包机制

包就是文件夹,一般利用公司域名倒置作为包名;com.baidu.www

JavaDoc

​ javadoc是用来自己API文档的,在命令行中操作(在文件地址栏可以用cmd加空格快速生成)
​ javadoc -encoding UTF-8 -charset UTF-8 XXX

标签:字符,java,变量,int,基础知识,运算符,首字母,类型
From: https://www.cnblogs.com/xiluoluo/p/16815166.html

相关文章

  • Java程序设计语言第四讲,继承与多态
    Java中通过extends实现继承并且,Java中只允许单继承,从而避免里多继承中可能产生的父类属性冲突问题。子类自动拥有父类声明的public和protected的成员。 继承条件下的......
  • 不妨试试更快更小更灵活Java开发框架Solon
    @目录概述定义性能架构实战SolonWeb示例SolonMybatis-Plus示例SolonWebSocket示例SolonRemotingRPC示例SolonCloudNacos示例概述定义Solon官网地址https://so......
  • 手写基于Java RMI的RPC框架
    留给读者其中最大的区别就是ZooKeeper注册中心,注册中心可以有读写监听器,这是一个优势,可以用来实现订阅通知,也能做数据的同步,甚至可以做基于读写分离的RPC框架,而且它是基......
  • JavaScript实现数据结构 -- 集合
    集合集合是一种无序且唯一的数据结构,在ES6中有集合Set。集合的常用操作去重使用Set结合展开运算符实现数组去重。判断元素是非在集合中使用Set的has方法判断元素是......
  • JavaScript实现数据结构 -- 字典
    字典字典与集合类似,也是一种存储唯一值的数据结构,字典以键值对的形式进行存储,在ES6中有字典Map。字典的常用操作增使用set()方法可以向字典中添加新成员,可连续添加。......
  • JAVA基本类型和包装类型
    JAVA基本类型和包装类型前言Java语言中的数据类型分为基本数据类型和引用类型,而我们进行Java开发的时候都听说过基本数据类型和包装类型,今天我们就来详细聊一聊Java中的......
  • Java中Final、 finally 、finalize的区别
    1、final可以修饰类、变量、方法,修饰类表示该类不能被继承、修饰方法表示该方法不能被重写、修饰变量表示该变量是一个常量不能被重新赋值。2、finally一般作用在try-catch......
  • Java_6
    代号为Mustang。版本发布于2006年12月11日,Sun把原本的名称“J2SE”改为“JavaSE”,然后再从版本号中去掉“.0”[23],而开发者内部编号仍然是1.6.0。[24]这......
  • 爬虫基础知识(web前端,请求模块urllib,重构user_agent)
    ✅个人主页:​​hacker_demo的51CTO博客......
  • 常用的Java开发IDE
    IDE(IntegratedDevelopmentEnvironment),集成开发环境。NetBeans。https://netbeans.orgJBuilder。IntelliJIDEAhttps://www.jetbrains.com/idea/Eclipse中......