Java基础入门笔记02——文档注释,JavaDos文件,数据类型,类型转换,变量默认值问题

Java基础入门笔记02——文档注释,JavaDos文件,数据类型,类型转换,变量默认值问题科普文字maven 约定大于配置maven整合了所有jar包springBoot整合了所有框架IDEA进行优化 百度看下 快捷键2021.11.13文档注释javadoc是Sun公司提供的一个技术,它从程序源代码中抽取类、方法、成员等注释形成一个和源代码配套的API帮助文档。用于解释包或者方法或者类的作用//JavaDoc:文档注释 /** */package com.baidu.www.base;/** * @author tim 作者名 * @versio

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

notes:

  • maven 约定大于配置
  • maven整合了所有jar包
  • springBoot整合了所有框架

IDEA进行优化如何优化?有哪些快捷键?
[待补充] 百度看下


2021.11.13

文档注释

JavaDoc是Sun公司提供的一个技术,它从程序源代码中抽取类、方法、成员等注释形成一个和源代码配套的API帮助文档。用于解释包或者方法或者类的作用

JavaDoc——文档注释 —— /** */
可以注释的内容:


/ **

  • @author tim 作者名
  • @version 1.0 版本号
  • @since 1.8 指明需要至少使用的jdk版本
  • @param 参数名
  • @return 返回值情况
  • @throws 异常情况
    */

package com.baidu.www.base;

//定义了一个类Doc
public class Doc { 
   
    String name;
    /** * @param name * @return * @throws Exception */
    public String test(String name) throws Exception { 
   
        return name;
    }
}//例子有一点问题,下来再查一下

对于上述我们自定义的类如何生成JavaDoc文档?

  • 命令行生成JavaDoc文档

  1. 打开命令行窗口,cd命令进入上面Dos.java文件所在地址(也可直接在文件所在地址打开命令行窗口)
  2. 然后命令行输入 javadoc Dos.java
  3. 执行完成后,当前文件所在文件夹就会多出一堆东西,其中index.html就是对应Doc.java的JavaDoc文档。

命令行出现中文乱码的解决办法:
使用 javadoc -encoding UTF-8 -charset UTF-8 Dos.java

  • IDEA生成JavaDoc文档

请添加图片描述


标识符——关键字——全小写

Java中大小写敏感

数据类型

Java是强类型语言,安全性高,所以速度慢

弱类型:VB,JavaScript

基本类型

  • 整型

    • byte——1字节——有符号数——八位(-128——127)

    • short——2字节

    • int——4字节

    • long——8字节(赋值时候后面加L,且一般用大写L)

      long num=30L;
      

各个数据类型的范围不用记忆,比如int属于Integer类,输入Integer,按住ctrl点击,可以查看详细情况,包括最大值最小值。

进制

  • 十进制无
  • 二进制0b开头
  • 八进制0开头
  • 十六进制0x开头

用System输出时自动转换为十进制

  • 浮点型

    • float——4字节——赋值时后面加F(为了与double区分)
    • double——8字节——可不加D

银行业务中常用的一个数据处理的类——BigDecimal类


public class demo02 { 
   
    public static void main(String[] args) { 
   

      float f=0.1f;
      double d=1/10.0;
        System.out.println(f==d);   //输出false

        float d1=564564452121221f;
        float d2=d1+1;
        System.out.println(d1==d2);  //输出true
        

因为浮点数存在长度误差,可能会有舍入问题

所以为了避免以上问题——最好完全避免使用浮点数进行比较


  • 字符类型char——2字节——比如中文,字母,符号

可以通过强制转换把所有字符转化为数字

Java是unicode编码:2字节 (16位)——65536个字符

一般表示为十六进制 ,以\u开头

char c3='\u0061';
System.out.println(c3);
//此处输出char型数据,输出a,因为a的编码为97————16进制表示为61

转义字符

\t 制表符 tab

\n 换行


  • 布尔类型boolean——只占一个位——只能取true或false
    (1字节=8位)

一般使用布尔类型时,会设置一个标志flag

boolean flag=true;

if(flag==true)
if(flag){ 
   
}

  • 字符串类型,String不是关键字,是一个类

    所有关键字都是小写的

  • 引用类型 (reference type)

    • 接口
    • 数组

类型转换

运算中,不同类型一定要转换为相同类型

优先级

  • 浮点数 > 整数

  • byte,short ,char<int<long<float<double

```
public class demo02 { 
   
    public static void main(String[] args) { 
   
        int i=128;
        byte b =(byte)i;  //高精度到低精度强制转换 (此处会溢出)
        
         //高到低 损失精度
        System.out.println(i);
        System.out.println(b);
        // 低到高 自动转换
        char c='a'; //char两个字节
        int d=c+1; //int 四个字节
        System.out.println(d);//98
        System.out.println((char)d);//b

    /*note 1.布尔值不能进行转换 2.不能把对象类型转换为不相干的类型 3. 高到低——强制转换——会损失精度 */
    
        //·操作比较大的数时,注意溢出问题
        //JDK7的新特性 数字间可以用下划线_分割不会影响输出
        //int占四个字节,32位二进制,范围最多到20亿
        int money =10_0000_0000;//10亿
        int years=20;
        int total=money*years; //200亿超过了int范围
        System.out.println(total);//结果输出一个负数,表示数据溢出
    }
}

变量

变量必须声明类型,变量名必须是合法的标识符

  • 作用域
    • 类变量
    • 实例变量
    • 局部变量

属性即为变量
实例变量:从属于对象


    int age;
    //若不进行初始化,会自动设置该类型的默认值 
    //整数是0——小数是0.0——String是null
    //布尔值默认为false
    //除了基本类型其他默认都是null
    
//main方法
    public static void main (String[] args){ 
   
        //局部变量
        int i=10;
        //变量类型+变量名=变量值
        demo05 demo05 = new demo05();
    }
    
//add方法
public static  add() { 
   
}
//类变量一般加static
    

常量修饰符final——初始化后不允许改变——一般用全大写字符取名

//    static final   double PI=3.14;
      final  static  double PI=3.14;
    //static final 均属于修饰符,不存在先后顺序
变量的命名规范
  • 见名知意

  • 类成员变量,局部变量,方法名:驼峰原则。
    *第一个单词小写,之后每个单词首字母大写,例如lastName,monthSalary

  • 类名:首字母大写,后面驼峰

运算符

算术运算符:加减乘除,取余%(取模),++,–

赋值运算符:=

关系运算符:大于等于(==)小于 不等于(!=)
instanceof——用于判断一个对象是否为一个类的实例,返回值为布尔值 true false

逻辑运算符:&& || !

位运算: ^(异或)——相同为0 不同为1


//IDEA快捷键——快速复制此行内容并往下多行ctrl+D

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/b); //输出0 ,因为int型数据遇到小数会舍弃
System.out.println(a/(double)b); //输出0.5  

幂运算

Math.pow(2,3) //2*2 * 2


逻辑运算

连接字符串 ——用 +

int a=10,b=20;
System.out.println(""+a+b); //1020
System.out.println(a+b+""); //30

输出时只要有字符串会自动转换为字符串类型
但是字符串在后和在前得出结果不一样,区分理解


        boolean a = true;
        boolean b = false;

        System.out.println("a&&b:" + (a && b));  
        System.out.println("a||b:" + (a || b));
        System.out.println("!(a&&b):" + !(a && b));

短路运算
&& 左边为false就不会进行右边的运算,||左边为true就不会进行右边的运算


位运算

^异或 相同为0 不同为1

2*8怎么运算最快?

2 * 2 *2 * 2 也就是2 左移3位

<<左移——放大2倍;>>又移——缩小两倍

包机制

  • 区别于命名空间

  • 包的本质就是文件夹package

  • 一般利用公司域名倒置作为包名 com.baidu.www

  • 导入包的语句import必须在package语句下方


笔记来源于学习狂神说的视频
课程地址 :https://www.bilibili.com/video/BV12J41137hu?p=30

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/168489.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • pytest运行_怎么清理ios文件app的缓存

    pytest运行_怎么清理ios文件app的缓存前言pytest运行完用例之后会生成一个.pytest_cache的缓存文件夹,用于记录用例的ids和上一次失败的用例。方便我们在运行用例的时候加上–lf和–ff参数,快速运行上一

  • SpringBoot +DynamicDataSource切换多数据源记录方法

    SpringBoot +DynamicDataSource切换多数据源记录方法

  • pythoncharm怎么保存_pycharm怎么设置代码自动保存「建议收藏」

    pythoncharm怎么保存_pycharm怎么设置代码自动保存「建议收藏」pycharm一般安装完毕,就是默认是自动保存的,但是……但是….既然是程序,既然是软件,就难免出现bug。也许会有码友出现头天晚上写好的代码,打开一看,第二天白花花一片!!!泪奔有没有最简单的,就是每次编写完毕,习惯按ctrl+s手动保存。但是,提醒你务必检查一下你的设置里面,是不是码友弄好自动保存!步骤如下:菜单File->Settings…->Ap…

  • mac navicat15 激活码[最新免费获取]

    (mac navicat15 激活码)JetBrains旗下有多款编译器工具(如:IntelliJ、WebStorm、PyCharm等)在各编程领域几乎都占据了垄断地位。建立在开源IntelliJ平台之上,过去15年以来,JetBrains一直在不断发展和完善这个平台。这个平台可以针对您的开发工作流进行微调并且能够提供…

  • Numpy中的meshgrid()函数

    Numpy中的meshgrid()函数转载自:https://blog.csdn.net/littlehaes/article/details/83543459官方解释:np.meshgrid(*xi,**kwargs)Returncoordinatematricesfromcoordinatevectors.从坐标向量中返回坐标矩阵不够直观直观的例子二维坐标系中,X轴可以取三个值1,2,3,Y轴可以取三…

  • 浅谈QFile

    浅谈QFileQFile是QT中用来处理文件方面的类,对于普通的文件读取,写入,都需要用上的。 简单的一个实例:#include”widget.h”#include”ui_widget.h”#include#include#includeWidget::Widget(QWidget*parent):QWidget(parent),

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号