Java基础语法-21-02-22

Java基础语法

目录

  1. 注释、标识符、关键字
  2. 数据类型
  3. 类型转换
  4. 变量、常量
  5. 运算符
  6. 包机制、JavaDoc

注释

  1. 在写代码比较少的时候我们还可以看的懂,但是当项目结构一旦复杂起来,我们就需要注释了。
  2. 注释并不会被执行,是我们写代码的人看的
  3. 书写注释是一个非常好的习惯
  4. 平时写代码一定要注意注释规范
  5. 寻找有趣的代码注释

Java总的注释有三种

  • 单行注释

  • public static void main (Sthing[]args){
        //单行注释
      //  输出一个Hello_Wrold!
        System.out.println("Hello_wrold!")
    }
    
  • 多行注释

  • public static void main(String[]args){
     //多行注释:可以注释一段文字 /* 注释*/
        /*
        我是多行注释
        我是多行注释
        我是多行注释
        我是多行注释
        */
    }
    
  • 文档注释

  • 文档注释在最后JavaDoc时在学习

  • //javaDoc:文档注释   /** 注释*/
    /**
    @Description HelloWorld
    @Author 狂神说Java,西部开源-秦疆
    */
    具体啥意思我没有看懂,这个是与JavaDoc一起使用的
    

标识符

  • 关键字

1.在这里插入图片描述


标识符的注意点

  1. 所有的标识符都应该以字母(A-Z或者a-z),美元符($)、或者下划线(_)开始
  • public static void (String[]args){
        //这些都是可以的
         String Ahello="niya";
         String ahello="niya";
         String$hello="niya";
         String _hello="niya";
        //这些都是不可以的
         String 1hello="niya";
         String #hello="niya";
         String *hello="niya";
    }
    
  1. 首字符之后可以是字母(A-Z或者a-z),美元符($)、或者下划线(_)或数字的任何字符的组合
  • public static void (String[]args){
       //下面就是首字母以上内容后面的组合随意
        String a9="niya";
        String $= ="niya";
       }
    
  1. 不能使用关键字作为变量或方法名
  • public static void (String []args){
        //关键字不可以作为变量名或者方法名
        String class="niya";
        String for="sabo ";
    }
    
  1. 标识符是大小写敏感的
  • public static void (String[]args){
       //大小写十分敏感
        String Man="ni";
        String man-"ni";
    }
    
  1. 合法标识符举例:age、$salary、_value、 __1_value等

  2. 非法标识符:123abc、-salary、#abc

  3. 可以使用中文命名,但是一般不建议这样使用,也不建议使用拼音很Low

    public static void (String []args){
        String 王者荣耀="百星王者"}
    

数据类型

  • 强类型语言

    • 要求变量的使用要严格符合规定,所有变量都必须向定义才能使用
  • 弱类型语言

    • 要求变量的使用不要严格符合规定,所有变量都必须向定义才能使用
  • Java的数据类型分为两大类

    • 基本类型(primitive type)

    • public static void (String[]args){
          //八大基本数据类型
      //整数
          int num1=10;//最长用
          byte num2=20;
          short num3=30;
          long num4=30L;//long类型要在数字后面加个L
          //小数:浮点数
          float num5=50.1F;
          double num6=3.1415926535897932384;
          //字符类型
          char name='中';
          //字符串,String不是关键字,是:类
          String name ="隔壁老王";
          //布尔值:是非
          boolean flag=true;//是
          boolean foag=false;//非
      }
      
    • 在这里插入图片描述

    • 引用类型(reference type)

    • 在这里插入图片描述


数据类型扩展面试题

import java.math.BigDecimal;

public class 数据扩展面试题 {
public static void main(String[]args){
	//	整数扩展 进制 二进制0b    十进制	八进制0	十六进制0x
	
	
	int i=10;
	int i2=010; //八进制
	int i3=0x11;//十六进制 0-9 A-F 16
	
	
	System.out.println(i);
	System.out.println(i2);
	System.out.println(i3);
//	============================================================
	//浮点数扩展? 	银行业务怎么表示? 钱
	//BigDecimal	数学工具类
//====================================================================	
	//float		有限		离散		舍入误差		大约		接近但不等于
	//double
	//最好完全使用浮点数进行比较
	//最好完全使用浮点数进行比较
	//最好完全使用浮点数进行比较
	
	float f =0.1f; //0.1
	double d = 1.0/10; //0.1
	
	System.out.println(f==d);//false
	
	float b1=123132132132131321f;
	float b2 = b1+1;
	
	System.out.println(b1==b2);//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 表:(97 = a  65=A) 2字节 0-65536	excel	2 16= 65536
	//u0000 uffff
	
	char c3 ='\u0061';
	
	System.out.println(c3);//a
	
	//转义字符
	// \t	制表符
	// \n 	换行
	//·······
	
	System.out.println("hello \n world");
	System.out.println("hello \t world");
	
		 String sa = new String("hello world");
		 String sb = new String("hello world");
		 System.out.println(sa==sb);
		 
		 String sc = "hwllo world";
		 String sd = "hello world";
		 System.out.println("sc==sd");
		 //对象 从内存分析
		 
		 //布尔值扩展
		 boolean flag = true;
		 
		 //if(flag==true){}(true)可写可不写&&可以写成if(flag){}
		 if(flag==true){ }//新手
		 if(flag){}//老手
	//Less id More! 代码要精简一度	
}
}

类型转换

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

    • 低--------------------------------------------------高
    • bute->short->char->int->long->flat->double
  • 运算中不同类型的数据先转化为同一类型,然后进行运算。

  • 强制类型转换

  • public static void main(String[] args){
       int i=128;
       //这个就是强制数据转换的样式
       byte b= (byte)i;//由高到低//内存溢出
       System.out.println(i);
       System.out.println(d);
        //由低到高
       double b =i;
        System.out.println(b);
    }
    
  • 自动类型转换

    • public static void main(String[] args){
          int i =128;
          //这就是自动类型转换样式
          double t =i;//由低到高
          System.out.println(i);
      }
      
  • 注意点:

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

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

    3. 在不大容量转换为低容量的时候,强制转换

    4. 转换的时候可能存在内存溢出问题!

    5. System.out.println((int)23.7);//23
      System.out.println((int)-45.89f);//-45
      char c='a';
      int d =c+1;
      System.out.println(d);
      System.out.println((char)d);
      
    6. //操作比较大的数的时候,注意溢出问题
      //jdk7新特征,数字之间可以用下划线分割
      int maney = 10_0000_0000;
      System.out.println(money);
      int years =20;
      int total = maney*years;//-1474836480,计算的时候溢出了
      long tota2 = maney*years;//默认是int,转换之前已经存在问题
      long tota3= maney*((long)years);//先比一个数转换为long。
      System.out.println(total);
      
      
    7. 在使用long的时候注意在数值后面要吧L写成大写的。


变量

  • 变量是什么:就是可以变化的量!

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

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

  • type varName[=value][{,varName[=varName]}];
    //一个变量名后可以使用多个变量,但一般不建议使用。
    //数据类型   变量名 =值;可以使用逗号隔开来声明多个同类型变量。
    
  • 注意事项:

    • 每一个变量都有类型。类型可以是基本类型,也可以是引用类型。
    • 变量名必须是合法的标识符。
    • 变量声明是一条完整的语句,因此每一个声明都必须是以分号结束
  • public static void main(String []args){
        //int a,b,c;/这种是错误的
        int a=,b=2,c=3;//这种事正确的但不建议使用
        //要注意:程序的可读性
        //着一种是固定的格式,一般的程序员都这麽写
        String name = "keaideren";
        char x= 'x';
        souble pi = 3.14;
        
    }
    
  • 变量作用域

    • 类变量

    • 实例变量

    • 局部变量

    • public static void main(String []args){
          static int allClicks=0;//类变量     :关键词:static
          String str="hello world";//实例变量
          
          public void method(){
              int i=0;//局部变量
          }
      }
      
    • 实例:

    • public class Demo{
      
      //属性:变量
      //类变量  static
          static double saLary="250";
          
          
       
      //实例变量:从属于对象;如果不自行初始化,这个类型的默认值
          //基本数据类型默认值: 0&&0.0
          //布尔值:默认是false
          //除了基本类型,其余的默认值都是null;
          String name ;
          int age;
      
      
      //main方法
      public static void main(String []args){
          //局部变量是写在在理的
          //局部变量:必须声明和初始化值
          int i;
          System.out.println(i);
          
        //变量类型   变量名=new Denw();
         Demo =new Deno();
         System.out.ptintln(demo.age);
          System.out.ptintln(demo.name);
          
          
          //类变量    static
          System.out.println(saLary);
      }
      
      
      //其他方法
      public vlid add(){}
      }
      }
      

常量

  • 常量(Constant):初始化(initialize)后不能再改变值!不会变动的值。

  • 所谓常量可以理解成一种特殊的变量,它的值被设定后,在程序运行过程中不允许被改变。

    final 常量名 = 值;
    final doublie PI = 3.14;
    
  • 常量名一般使用大写字符。

  • //修饰符,不存在先后顺序
    //类变量  常量        常量名    
    static final doublie PI = 3.14;
    pubic static void main (Strign[]args){
    System。out.println(PI);                           }
    
  • 常量的命名规范

    • 所有变量、方法、类名:见名知意
  • 类成员变量:首字母小写和驼峰原则:minthSalary/除了第一个单词以外,后面的单词首字母大写 Lastname,

    • 局部变量:首字母小写和驼峰原则
  • 常量:大写字母个下划线:MAX_VALUE

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

运算符

  • Java语言支持如下运算符 加减乘除的优先级

    • 算术运算符:+、-、*、/、%、++、–

    • 赋值运算符:=

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

    • 逻辑运算符:&&(与)、||(或)、!(非)

    • 位运算符:&、|、^、~、>>、<<、>>>、(了解一下 !!!)

    • 条件运算符:?、:(简称:三元运算符)

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

    • int a = 21;
      int b = 21;
      int c = 21;
      int d = 21;
      System.out.printoln(a+b);
      System.out.printoln(a-b);
      System.out.printoln(a*b);
      System.out.printoln(a/b);
      System.out.printoln("======================");
      long e =132131321313213L;
      int f =132;
      short g = 10;
      byte  h =8;
      System.out.printoln(e+f+g+h);//long
      System.out.printoln(f+g+h);//int
      System.out.printoln(g+h);//int
      //关系运算符返回的结果:   正确  错误   布尔值
      //if 配合使用
      int  v = 10;
      int  t = 20;
      int  y = 21
          //取余,模运算
      System.out.printoln(y%t);//y/t   21/20····1
      
      System.out.printoln(v>t);//false
      System.out.printoln(v<t);//true
      System.out.printoln(v==t);//false
      System.out.printoln(v!=t);//true
      
    • ++、–

    • //++   --  自增  自减 一元运算符
      int a=3;
      int b=a++;//a++  a=a+1
      System.out.println(b);//执行完代码后,先给并赋值在自增
      int c=++a;//++a  a=1+a//行完代码前,先给并赋值在自增
      System.out.println(c);
      //应用在for循环时重点使用
      
    • 幂运算

    • //幂运算2^3  2*2*2 = 8    很多运算都要会使用一些工具类来做。,如:Math
      double pow = Math.pow(3.2);
      System.out.println(pow);
      
    • 逻辑运算符

    • //逻辑运算符    
      //与(你和他)、或(你或者他)、非(取反)
      boolean a = true;
      boolean b = false;
      //逻辑与运算:两个变量都为真,结果才为thue
      System.out.println("a&&b");
      //逻辑与运算:两个变量有一个为真,则结果才为true
      System.out.println(a||b);
      //如果是真,则变为假,如果是假则变为真
      System.out.println(!(a&&b);
                         
      //短路运算
      int c =6;
      boolean d = (c>=6)&&(c<5);
      System.out.println(c);//6
      System.out.println(d);//thue 但c<5没有执行                   
                     
      
    • 位运算

    • /*
      a = 0010 1100 1100
      b = 0011 0011 1110
      ------------------
      a&b = 0010 0000 1100
      a|b = 0011 1111 1110
      a^b = 0001 1111 0010
      a~b = 1101 1111 0011
      
      2*4 = 8; 2*2*2
      <<//   *2
      >>     /2
      System.out.println(2<<2);//原理以后用到自己查                  
      
      
      */
      
    • 扩展赋值运算符

    • int a= 20;
      int b= 30;
      
      a+=b;//a = a+b
      a-=b;//a = a-b
      System.out.println(a);
      System.out.println(b);
      
      //字符串连接  +   ,  String
      System.out.println(""+a+b);//字符串在前面  =2030
      System.out.println(a+b+"");//字符串在后面   =50
      
    • 三元运算符

    • //x ? y : z
      //如果x==true,则结果为y,否则结果为z
      
      int score = 50;
      String tupe  =  score <60?"不及格""及格";//必需掌握
      //以后会使用 if 也可以使用这个、这个可以时语句更加精简
      System.out.println(type);
      

包机制 (包的本质就是文件夹)

  • 为了更好的组织类,Java提供了包机制,用于区别类名的命名空间。

  • 包语句的语法格式为:

  • package pkg1[.pkg2[.pkg3...]];
    
  • 一般利用公司域名导致作为包名www.baidu.com com.baidu.www

  • 为了能够使用某一个包的成员,我们需要在Java程序中明确导入该包.使用"import"语句可完成此功能

  • import package1[.package2...].(xlassname|*);
    
  • 一般导入自己写的文件

  • 项目文件夹>包(cn)>类(类名)

    //包    包名
    package cn;//定义包 package
    //导入包 import
    //import cn.niu.*;导入这个包下所有的类!
    
    //导入包   包名  类名
    import    cn.  niu;
    //类         类名
    public class niu{
    public static void main(String[]args){
        
    	}
    }
    
  • 课外资料 ( 阿里巴巴Java开发手册)看一下—> 阿里巴巴Java开发手册



javaDos生成文档

javaDos

  • javadoc命令是用来声称自己API文档的
  • 参属信息
    • @author 作者名
    • @version 版本号
    • @since 指明需要最早使用的jdk版本
    • @param 参数名
    • @retum 返回值情况
    • @throws 异常 抛出情况
  • 学会查找使用IDEA生产JavaDos文档!

视频来源

​ 请点击–> B站遇见狂胜说

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值