环境搭建 JAVA的基本语法 流程控制语句 函数

环境搭建 JAVA的基本语法 流程控制语句 函数

一、环境搭建 JRE JVM JDK

  • JVM 是JAVA实现跨平台的根本

  • JRE 包含 JVM和API库(功能)容器(jar):可以些简单的程序

  • JDK 包含 JRE和外围的开发工具

  • 只要安装JDK就行了

  • 安装软件注意:路径不要太深 路径不要有中文,空格

    jdk目录

    bin:二进制指令;javac.exe java.exe

      javac.exe:编译 将一个.java类型的源文件编译成一个.class文件
    
          (字节码文件)的过程
    
      java.exe:运行.class文件。
    
      .class个数与java中类的个数一致。
    
      为什么.class文件一般只写一个类:
    
          1.时间:调用的时候,引用的时候,不用把所有的类都编译
    
          2.可读性
    
          3.面向对象的原因
    

环境变量的配置:把一个局部的变量,换成全局的变量

%JAVA_HOME%:是为了简单,去除冗余 %是取变量对应的值

lib:库

JAVA的基本语法

关键字:是被JAVA赋予了特殊含义的单词,咱们只能用不能改

标识符 :程序中我们自己命令的

  • 不能和关键字重名

  • 只能包含字母数字,_和$

  • 区分大小写

  • 不能以数字开头

  • 注意可以使用中文但是一般不用

注释

  • 单行注释

  • 多行注释

常量

  • 内存称为短期存储

  • 磁盘称为长期存储

  • 流都是以内存为中心:进入的就是输入流,出去的就是输出流

变量

  1. 变量:在内存中开辟一块空间,可以存储数据,只能存一个,值是可以改变的

数据变量

  1. 数据类型就是为了规定内存占用的多少,节省内存。

     byte  1  [-2^7,2^7-1]
    
     short 2  [-2^15,2^15-1] 
    
     int   4  [-2^31,2^31-1]
    
     long  8  [-2^63,2^63-1]
    
     float  4 
    
     double 8
    

**float型的MAX_VALUE远大于long **

    优先级:char ,byte-short-int-long-float-double



    char编码:

    

    ASCLL:0-48 a-97 A-65



    中文编码:GBK 一个汉字对应2个字节;只对汉语进行编码

    

    utf-8:一个汉字对应3个字节

    uncoude:内部编码 一个汉字2个字节

    IS08859-1:欧洲标准  不支持汉字 (可以进行编码,但是会丢失数据)

再编码再解码

  1. 单位:

     1 Byte = 8 bit(位)
    
     1 kB = 1024 B
    
     1 MB = 1024 KB
    
     1 GB = 1024 MB
    
     1 TB = 1024 GB
    
     1 PB = 1024 TB
    

bit 是小写 Byte是大写

  • 有符号号位最高为位符号位

计算机存储的是补码

    知道负数的补码求原码?

    答:减一 取反 or 取反 加一

运算符

逻辑运算符:&& || !  元素只有true false;有短路功能

    当出现连续的 “与” or“或”,用短路功能



位运算符: & | ^ ~  ------不存在短路功能--直接操作二进制





位运算符为什么快?

    直接操作的位,不用转换位二进制,直接进行操作。



移位运算符:有符号:>> (右 除)  <<(左 乘)

           无符号:>>> 无符号右移

        作用:二分查找
流程控制语句
  • 顺序

  • 分支:并列的关系

  • 循环

if和switch 区别?

switch适合处理判断分支较多的情况下(代码可读性好),而if适合处理判断分支较少的情况下(反之代码可读性差,容易出现漏判或重复判断)。

函数

作用

提高可读性,安全性,复用性,健壮性,节省内存

定义

拥有一段特殊功能的代码,的封装。

小驼峰原则 第一个单词的首字母小写,其余都大写 函数名

大驼峰原创 所有单词都大写 类名

注意

函数不能嵌套

功能单一性原则

成员变量和局部变量:是相对的概念。

内存分区

栈区:先进后出 局部变量和方法放在栈区 ,使用完立即释放



堆区: 存储new出来的数据或对象,通过垃圾回收机制释放,



方法区:



本地方法区:



寄存器:cpu 的使用



    



    重载:参数的个数or返回值类型or参数的位置有关,和返回值,参数的名字,无关

    

    作用:更好的调用,方法名一致,可以解决不同但类似的问题。最好的运用是构造函数。

同一个类的两个方法,只有返回值不同,它会报错

JVM的优化?

https://blog.csdn.net/qq_36866808/article/details/80391008

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值