java基础学习

1.注释、标识符、关键字

书写注释是一个很好的习惯

  1. 注释

    • 单行注释 //

    • 多行注释 /* */

    • 文档注释 /** */

  2. 标识符

    • 关键字

      abstract、assert、boolean、break、byte、case、catch、char、class、continue、default、do、double、else、enum、extends、final、finally、float、for、if、implements、import、int、interface、instanceof、long、native、new、package、private、protected、public、return、short、static、strictfp、super、switch、synchronized、this、throw、throws、transient、try、void、volatile、while。

    • Java所有的组成部分都需要有名字。类名、变量名以及方法名都被称为标识符。

    • 标识符注意点

      • 所有的标识符都应该以字母(A-Z或者a-z),美元符($),或者下划线(_)开始

      • 首字母之后可以是字母(A-Z或者a-z),美元符($),下划线(_)或数字的任何字符组合

      • 不能使用关键字作为变量名或方法名

      • 标识符是大小写敏感的

      • 可以使用中文命名,但是不建议,也不建议使用拼音

2.数据类型

  1. 强类型语言

    • 要求变量的使用要严格符合规定,所以变量都必须先定义后才能使用

  2. 弱类型语言

Java的数据类型

1.基本类型(primitive type)
数据类型关键字内存占用范围
字节类型byte1字节-128~127
短整型short2字节-32768~32767
整形int4字节-2^31 ~2^31 - 1
长整型long8字节-2^63 ~ 2^63 - 1
单精度浮点数float4字节有范围,一般不关注
双精度浮点数double8字节有范围,一般不关注
字符型char2字节0~65535
布尔型boolean没有明确规定true 和 false
 //整数拓展: 进制   二进制0b  十进制  八进制0  十六进制0x
 int i = 10;
 int i2 = 010;//八进制0
 int i3 = 0x10;//十六进制0x
 //========================================================
 //浮点数拓展   银行业务怎么表示?
 //bigDecimal  数学工具类
 //========================================================
 //float   有限  离散  舍入误差  大约  接近但不等于
 //double
 //最好完全避免使用浮点数进行比较
 float f = 0.1f; //0.1
 double d = 1.0/10; //0.1
 ​
 System.out.println(f==d); //false
 ​
 float d1 = 23232232232f;
 float d2 = d1+1;
 ​
 System.out.println(d1==d2); //true
 ​
 //========================================================
 //字符拓展   
 //========================================================
 char c1 = 'a';
 char c2 = '中';
 System.out.println(c1);
 System.out.println((int)c1); //强制转换
 System.out.println(c2);
 System.out.println((int)c2); // 强制转换
 //所有的字符本质还是数字
 //编码 Unicode  2字节  65536     Excel  2的16次方 == 65536 

 //从对象 从内存分析 
 String sa = new String("hello world");
 String sb = new String("hello world");
 System.out.println(sa==sb);//flase
 ​
 String sc = "hello world";
 String sd = "hello world";
 System.out.println(sc==sd);//true
 ​
 //布尔值拓展
 boolean flag = true;
 if (flag==true){}
 if(flag){}
 //两个表达是相等的

2.引用类型(reference type)
  1. 接口

  2. 数组

3.转义字符

4.字节

  • 位(bit):是计算机内部数据存储的最小单位,11001100是一个八位二进制数

  • 字节(byte):是计算机中数据处理的基本单位,习惯上用大写B表示

  • 1B(byte,字节)=8bit(位)

  • 字符:是指计算机中使用的字母、数字、字和符号

  • 1bit表示1位

  • 1Byte表示一个字节 1B=8bit

  • 1024B=1KB

  • 1024M=1G

5.类型转换

由于Java是强类型语言,所以要进行有些运算时,需要用到类型转换

 低------------------------------------------------->高
 byte,short,char -->int --> long --> float --> double

强制类型转换 (类型)变量名 高---低

自动类型转换 低 ---高

注意点

  1. 不能对布尔值进行转换

  2. 不能把对象类型转换为不相干的类型

  3. 在把高容量转换为低容量的时候,强制转换

  4. 转换的时候可能存在内存溢出,或者精度问题

6.变量

  • Java是一种强类型语言,每个变量都必须声明其类型

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

  • 注意事项

    • 每个变量都有类型,类型可以是基本类型,也可以是引用类型

    • 变量名必须是合法的标识符

    • 变量声明是一条完整的语句,因此每一个声明都必须以分号结束

  • 命名规范

    • 有意义的名称:变量名应当能够清楚地反映其用途,避免使用单个字符或无意义的缩写,使代码更加直观易懂。

    • 驼峰命名法:Java变量命名普遍采用驼峰命名法,即第一个单词小写,之后每个单词首字母大写,如 myVariableName。

    • 避免使用关键字:Java关键字,如 class、int、boolean等,不能用作变量名。

    • 区分大小写:由于Java对大小写敏感,相似的变量名在大小写上的不同会被视为完全不同的变量。

    • 数字不开头:变量名不能以数字开头,但可以包含数字。

    • 命名约定:根据变量的类型(如局部变量、实例变量、静态变量等),遵循相应的命名约定,以增强代码的清晰度和一致性。

    • 常量:大写字母和下划线,如MAX_VALUE

    • 类名:首字母大写和驼峰原则,如Man,GoodMan

    • 方法名:首字母小写和驼峰原则,如run(),runRun()

 public class Demo01 {
     //类变量 static
     static double salary = 2500;
 ​
     //属性:变量
 ​
     //实例变量:从属于对象: 如果不自行初始化,这个类型的默认值 0  0.0
     //布尔值:默认false
     //除了基本类型,其余的默认值都是null;
     String name;
     int age;
 ​
     //main方法
     public static void main(String[] args) {
         //局部变量;必须声明和初始化值
         int i = 10;
         System.out.println(i);
 ​
         //变量类型   变量名字 = new Demo01();
         Demo01 demo01 = new Demo01();
         System.out.println(demo01.age);
         System.out.println(demo01.name);
 ​
         //类变量  static
         System.out.println(salary);
     }
 ​
     //其他方法
     public void add(){
 ​
     }
 }
 ​

7.常量

  • 常量:初始化后不能再改变值!不会变动的值

  • 常量名一般使用大写字符

 final 常量名 = 值
 final double PI = 3.14;
 //修饰符不分先后顺序

8.运算符

  • 算术运算符:+,-,*,/,%,++,--

  • 赋值运算符:=

  • 关系运算符:> , < , >= , <= , == , != , instanceof

  • 逻辑运算符:&&,||,!

  • 位运算符:&,|,^, ~,>> , << , >>>(了解)

  • 条件运算符:?:

  • 扩展赋值运算符:+=,-=,*=,/=

 package operator;
 ​
 public class Demo01 {
     public static void main(String[] args) {
         //二元运算符
         int a = 10;
         int b = 20;
         int c = 25;
         int d = 25;
 ​
         System.out.println(a+b);
         System.out.println(a-b);
         System.out.println(a*b);
         System.out.println(a/(double)b);//小数的时候注意范围
     }
 }
 ​
 //=================================================================================
 ​
 package operator;
 ​
 public class Demo02 {
     public static void main(String[] args) {
         long a = 121212121211L;
         int b = 123;
         short c = 10;
         byte d = 8;
 ​
         System.out.println(a+b+c+d);//Long
         System.out.println(b+c+d);//Int
         System.out.println(c+d);//Int
         //Int以上自动升为混合运算类型中最高类型       Int以下类型都为Int
 ​
         System.out.println("===============================================================");
 ​
         //位运算
         /*
          A = 0011 1100
          B = 0000 1101
          ---------------------------
        A&B = 0000 1100    两个都为1才为1,否则为0
        A|B = 0011 1101    对应位都是0则结果为0,否则为1
        A^B = 0011 0001    相同则为0,否则为1(同0异1)
        ~B = 1111 0010     取反
 ​
        2*8 = 16  2*2*2*2
        <<(左移)  相当于*2
        >>(右移)  相当于/2
 ​
        0000 0000    0
        0000 0001    1
        0000 0010    2
        0000 0011    3
        0000 0100    4
        0000 1000    8
        0001 0000    16
 ​
          */
         System.out.println(2<<3);
     }
 }
 ​

9.JavaDoc

Javadoc命令是用来生成自己API文档的

参数信息:

  • @author 作者名

  • @version 版本号

  • @since 指明需要最早使用的JDk版本

  • @param 参数名

  • @return 返回值情况

  • @throws 异常抛出情况

 package com.zhang.Java_base;
 ​
 /**
  * @author yexing
  * @version 1.0
  * @since 1.8
  */
 ​
 public class Doc {
     String name;
 ​
     /**
      * @author yexing
      * @param name
      * @return
      * @throws Exception
      */
 ​
     public String test(String name) throws Exception{
         return name;
     }
 ​
     //通过命令行  javadoc 参数 java文件 ---> javadoc -encoding UTF-8 -charset UTF-8 Doc.java
     //作业:学会查找使用idea生成javadoc文档!    
 }
 ​

idea生成javadoc文档

  • 9
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值