zoukankan      html  css  js  c++  java
  • 03x01 Java基础语法


    一、注释、标识符、关键字

    • 单行注释、多行注释、文档注释
      1. 单行注释

        // 双斜杠

      2. 多行注释(单星号)

        /*

        *

        */

      3. 文档注释(双星号) 少用

        /**

        *

        *

        */

    • 标识符和关键字
      1. 关键字

             

      1. 标识符命名规则

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

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

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

        • 标识符是大小写敏感的

        • 合法标识符举例: age、$salary._value、__1_value

        • 非法标识符举例:123abc、-salary、#abc

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

           

    二、数据类型

    • 强类型语言(Java)

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

    • 弱类型语言

    • Java的数据类型分为两大类

      • 基本类型(primitive type)

      • 引用类型(reference type)

    • 八大基本数据类型

         

    • 字节

      • 位(bit) 、位(byte)

      • 8bit=1B(byte)

    • 数据类型扩展及面试题

      1. 整数扩展 进制 二进制 十进制 八进制(0) 十六进制(0x)

         

            八进制的十是十进制的8,十六进制的十是十进制的16

      1. 浮点数扩展?

        银行业务怎么表示?

        • BigDecimal 数学工具类

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

        • double

        • float 和 double 的0.1不是等价的

        • 最好完全使用浮点数进行比较

        • 最好完全使用浮点数进行比较

        • 最好完全使用浮点数进行比较

        3.字符扩展

        • 所有的字符本质还是数字,例:

        • 编码 Unicode 2字节 0-65536

        • 转义字符

          • /t 制表符

          • /n 换行

          • ……

        • 扩展

          地址

        1. 布尔值扩展

          • boolean 值为false或true

          • Less is More! 代码要精简易读

    三、类型转换

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

    • 运算中,不同类型的数据先转化为同一类型,然后进行运算。

    • 强制类型转换

    • 自动类型转换   

    •               int i = 128;
                    byte b = (byte)i;//内存溢出,数值超过了该类型能表示的最大值


    •        //强制转换 (类型)变量名
      //自动转换 低--》高 比如float和double
             System.out.println(i);
             System.out.println(b);
             /*
             注意点:
                 1.不能对布尔值进行转换
                 2.不能把对象类型转为不相干的类型
                 3.在把高容量转换到低容量的时候,强制转换
                 4.转换的时候可能存在内存溢出,或者精度问题!
             */
             System.out.println((int)23.7);
             System.out.println((int)-45.89f);
              //操作比较大的数的时候,注意溢出问题
             // JDK7新特性,数字之间可以ongoing下划线分割
             int money = 10_0000_0000;
             int years = 20;
             long total = money*years; //-1474836480,计算的时候溢出了
             System.out.println(total);//money和years都是int 所以计算的时候是以int类型进行计算的

             long total3 = money*((long)years);//20000000000,先把一个数转换成long,输出正确
             System.out.println(total3);
      //L和l都表示long,但是l很容易被误认为是1,所以用L

     四、变量、常量

    1、变量
    • 变量:可以变化的量

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

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

    • 注意事项

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

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

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

    • 变量作用域

      • 类变量

      • 实例变量

      • 局部变量

        public class Demo03 {
           static int allDemo03=0;//类变量
           String str ="hello world!";//实例变量
           public static void main(String[] args) {
               int i = 0; //局部变量
          }
        }
         
     
     
     
    2、常量
    • 常量(Constant):初始化(initialize)后不能在改变的值!不会变动的值。

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

    • 定义:

    • 常量名一般用大写字符

    3、变量的命名规范
    • 所有变量、方法、类名:见名知意

    • 类成员变量:首字母小写和驼峰原则,如:monthSalary

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

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

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

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

    五、运算符

    1、Java语言支持如下运算符
    • 算术运算符:+、-、*、/、%、++、--

    • 赋值运算符:=

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

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

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

      /*
      A = 1100 0010
      B = 0101 0110
      _____________
      A&B = 0100 0010
      A|B = 1101 0110
      A^B = 1001 0100
      ~B = 1010 1001 (取反)

      效率极高
      >>:/2
      <<:*2
      */
    • 条件运算符:? :

      int a = 10;
      int b = 20
      String type = a > b ? "a大" :"b大";
      System.out.println(type);
    • 扩展赋值运算符:+=、-=、*=、/=
    • //字符串拼接
    •         int a = 10;
             int b = 20;

             System.out.println(a+b+"hello");
    • 优先级( )

    2、Math工具类

            double e = Math.pow(2,3);
           System.out.println(e);

    六、包机制、JavaDoc

    1、包机制
    • 为了更好地组织类,Java提供了包机制,用于区别类名的命令控件。

    • 包语句的语法格式为

      Package pkg1[. pkg2[. pkg3]];
    • 一般利用公司域名倒置作为包名:com.kuangstudy.www

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

      import Package1[. Package2].(classname|*);
    • 导入包中所有东西

      import com.kuang.base.*;//“*”表示所有

    《阿里巴巴Java开发手册》

    2、JavaDoc
    • Javadoc命令是用来生成自己API文档的

    • 参数信息

      • @author 作者名

      • @version 版本号

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

      • @param 参数名

      • @return 返回值情况

      • @throws 异常抛出情况

    package kuang;
    //加在类上就是类信息,加在方法上就是方法信息
    /**
    * @author Huangdp
    * @version 1.0
    * @since 1.8
    *
    */
    public class Demo01 {
       String name;

       /**
        * @author Huangdp
        * @version 1.0
        * @since 1.8
        * @param name
        * @return
        * @throws Exception
        */
       public String test(String name)throws Exception{
           return name;
      }
    }

     

    • cmd的 javadoc操作
      • 打开文件路径:右击类-->如下

         

      • 命令

        javadoc -encoding UTF-8 -charset UTF-8 Demo.java
      • 生成如下

         

      • 作业:使用IDEA生成JavaDoc文档

        1、Tools->Generate JavaDoc

        2、如下生成

         

    • 官方帮助文档:

      JDK8帮助文档



  • 相关阅读:
    mysql数据库 及 常用 SQL语句
    移动前端—图片压缩上传实践
    使用Nodejs 的http-proxy 模块做代理服务器的尝试
    Ajax请求参数为文件类型
    <iframe>框架标签的使用
    vue2 核心概念
    关于Web前端密码加密是否有意义的总结
    原生js 与 jQuery对比
    word文档操作
    js (ECMAScript) 对数据处理的 方法、属性总结
  • 原文地址:https://www.cnblogs.com/nkcat/p/14838269.html
Copyright © 2011-2022 走看看