【Java入门】Java基础

【Java入门】Java基础

1、 注释、标识符

1.1 注释

  • 单行注释 //

  • 多行注释 /* …*/

  • 文档注释 /**

    //JavaDoc:文档注释
            /**
             * @Description HelloWorld
             * @Author smile汤汤
             */
    

1.2 标识符

  • Java所有的组成部分都需要名字。类名、变量名以及方法名都被称为标识符。
  • 由数字、字母、下划线_ 和 美元符$ 组成
  • 不能以数字开头
  • 不能是关键字
  • 区分大小写

2、数据类型

  • 基本类型

    image.png

    • 基本数据类型分为:四类八种

    • byte的取值范围为:-128~127

    • 整数和小数取值范围大小关系:double > float > long > int > short > byte

    • 定义long类型的变量:需要在数据值的后面加一个L作为后缀。大小写都可以,但建议大写(小写易与1混淆)!

    • 定义float类型的变量:数据值也需要加一个F作为后缀

    • 所有的字符本质还是数字

  • 引用类型

    • 接口
    • 数组

【拓展:字节】

  • 位(bit):是计算机 内部数据 储存的最小单位,11001100是一个八位二进制数
  • 字节(byte):是计算机 数据处理 的基本单位,习惯上用大写B表示
  • 字符:是计算机中使用的字母、数字、字和符号
1 bit表示11 B = 8b
1024B = 1 KB
1024KB = 1M
1024M = 1G
1024G = 1TB

3、类型转换

3.1 隐式转换(自动类型提升)

  • 低 --> 高

  • byte short char 直接提升为int,然后进行运算

3.2 强制转换

  • 格式:(类型)变量名

  • 高 --> 底

  • 不能对布尔值进行转换

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

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

public class Demo01 {
    public static void main(String[] args) {
        //操作比较大的数的时候,注意溢出问题
        //JDK7新特性,数字之间可以用下划线分割
        int money = 10_0000_0000;
        int years = 20;
        int total = money*years;//-1474836480,计算的时候溢出了
        long total2 = money*years;//-1474836480,默认是int,转换之前已经存在问题了

        long total3 = money*((long)years);//20000000000,先把一个数转换为long可解决溢出问题
        long total4 = ((long)money)*years;//20000000000,先把一个数转换为long可解决溢出问题

        System.out.println(total);
        System.out.println(total2);
        System.out.println(total3);
        System.out.println(total4);
    }
}

4、变量、常量

4.1 变量作用域

  • 类变量
  • 实例变量
  • 局部变量
public class Demo02 {

    //类变量 static
    static double salary = 2500;
    //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);//10

        //变量类型 变量名字 = new Demo02();
        Demo02 demo02 = new Demo02();
        System.out.println(demo02.age);//0
        System.out.println(demo02.name);//null

        //类变量 static
        System.out.println(salary);//2500.0
    }

    //其他方法
    public void add(){

    }
}

4.2 常量

  • 常量名一般使用大写字符
final 常量名 =;
final double PI = 3.14;
public class Demo03 {

    //修饰符,不存在先后顺序,变量名前面的都为修饰符
    //final static double PI = 3.14;
    static final double PI = 3.14;

    public static void main(String[] args){
        System.out.println(PI);
    }
}

4.3 变量的命名规范

  • 所有变量、方法、类名:见名知意
  • 类成员变量:首字母小写和驼峰原则:monthSalary
  • 局部变量:首字母小写和驼峰原则
  • 常量大写字母和下划线:MAX_VALUE
  • 类名:首字母大写和驼峰原则:Man,GoodMan
  • 方法名:首字母小写和驼峰原则:run(),runRun()

5、运算符

5.1 位运算符 & | ^ ~

  • &:与
  • |:或
  • ^:异或,相同为0,不同为1
  • ~:取反
public static void main(String[] args) {
        //位运算符--与二进制打交道
        /*
        A = 0011 1100
        B = 0000 1101
        -----------------
        A&B = 0000 1100
        A|B = 0011 1101
        A^B = 0011 0001
        ~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);
    }

5.2 字符串连接符+

  • 在+中,只要出现了字符串,所有的+就变成了连接符
public static void main(String[] args){
        int a = 10;
        int b = 20;

        //字符串连接符 + String
        System.out.println(""+a+b);//1020
        System.out.println(a+b+"");//30
}

6、包机制、JavaDoc

  • 项目(project) – 模块(module) – 包(package) – 类(class)

  • 一般利用公司域名倒置作为包名

    www.baidu.com ==>  com.baidu.www
    //com.zhang.xxx
    //com.wang.xxx
    
  • 定义包:

    //package pkg1[.pkg2.[pkg3...]];
    package com.Tang.operator;
    
  • 导入包:

    //import pkg1[.pkg2...].(classname);
    import java.util.Date  //导入Date类
    import com.Tang.base.* //导入包下所有的类
    
  • javadoc命令是用来生成自己API文档的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值