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

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

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

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Python3 实例–Python 计算圆的面积

    Python3 实例–Python 计算圆的面积#代码如下:#Python3实例–Python计算圆的面积print(“Python3实例–Python计算圆的面积”)#公式中r为圆的半径。r=float(input())PI=3.14s=PI*(r**2)print(“圆的面积为:{}”.format(s))#运行结果如下:Python3实例–Python计算圆的面积3圆的面积为:…

    2025年6月5日
    2
  • Ubuntu9.04上看电影加载中文字幕乱码问题

    Ubuntu9.04上看电影加载中文字幕乱码问题最近在我的Ubuntu9.04上看电影总是加载中文字幕的时候出现乱码,后来发现是字符编码的问题,今天休假在家就写了一个小的字符转码的程序,目前来说满足我自己的需求了,代码如下:importsys,ioiflen(sys.argv)!=2: print”Pleaseinputfilepath!”else: f1=io.open(sys.argv[1],”r”

    2022年7月11日
    20
  • 学大数据要学哪些算法_学习大数据需要掌握哪些知识?[通俗易懂]

    学大数据要学哪些算法_学习大数据需要掌握哪些知识?[通俗易懂]大数据已经成为时代发展的趋势,很多人纷纷选择学习大数据,想要进入大数据行业。大数据技术体系庞大,包括的知识较多,系统的学习大数据可以让你全面掌握大数据技能。学习大数据需要掌握哪些知识?怎样进行大数据学习的快速入门?学大数据课程之前要先学习一种计算机编程语言。Java是大数据学习需要的编程语言基础,因为大数据的开发基于常用的高级语言。而且不论是学习hadoop,还是数据挖掘,都需要有编程语言作为基础…

    2022年6月3日
    38
  • MySQL索引原理以及查询优化「建议收藏」

    一、介绍1.什么是索引?一般的应用系统,读写比例在10:1左右,而且插入操作和一般的更新操作很少出现性能问题,在生产环境中,我们遇到最多的,也是最容易出问题的,还是一些复杂的查询操作,因此对查询语

    2022年3月29日
    49
  • Linux云服务器挖矿病毒(crypto和pnscan)导致CPU占用100%问题解决方案「建议收藏」

    Linux云服务器挖矿病毒(crypto和pnscan)导致CPU占用100%问题解决方案「建议收藏」木马攻击问题由来阐述我买了三年的阿里云服务器(在阿里云官网买的),已经使用了一年多了,平时拿来搭建网站,有时也拿来学习技术和开发测试,一直使用很稳定。直到近期我服务器上安装了docker并部署了springboot+mysql+nginx项目,就被攻击了。但就在今年的5月14号,我的服务器被木马攻击,然后被拿去挖矿了。我服务器的cpu持续维持在CPU100%.后果是直接导致我网站无法正常请求和响应。而且Linux服务器的root权限被窃取了。黑客在服务器/root/.ssh目录下生成了连root用户

    2022年5月1日
    56
  • c语言获得当前时间_c语言怎么表示时间

    c语言获得当前时间_c语言怎么表示时间函数名:time()头文件:time.h函数原型:time_ttime(time_t*timer)功能:获取当前的系统时间,返回的结果是一个time_t类型,其实就是一个大整数,其值表示从UTC(CoordinatedUniversalTime)时间1970年1月1日00:00:00(称为UNIX系统的Epoch时间)到当前时刻的秒数。然后可以调用localtime将time_t…

    2022年10月10日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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