栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java基础01-开发环境&数据类型

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java基础01-开发环境&数据类型

Java开发环境
  • JVM(Java Virtual Machine)
    • 在需要运行Java应用程序的操作系统上,安装一个与操作系统对应的JVM
  • JRE(Java Runtime Environment)
    • 是Java程序运行时的环境,包含JVM和运行时需要的核心类库
  • JDK(Java Development Kit)
    • Java程序开发工具包,包含JRE和开发人员使用的编译器工具
    • 开发工具:编译工具(javac.exe)和运行工具(java.exe)
    • 想要开发一个全新的Java程序,必须安装使用JDK
  • 关系图:
Java运行的内存分配
各部分名称作用
栈(Stack)存储方法中的局部变量(方法的参数或方法体内部的变量);方法的运行过程一定在栈中;一旦超出作用域,立刻从栈内存中消失
堆(Heap)凡是new关键字创建的新对象,都存在于堆中;堆内存中每个对象都有一个地址值(16进制);堆内存中的数据,都有默认值(如整数默认值为0等)
方法区(Method Area)存储.class相关的数据,包含方法的信息;
本地方法栈(Native Method Stack)与操作系统相关;
寄存器(pc Register)与CPU相关;
Hello,World!
package 基础;

// 单行注释

public class Demo01_HelloWorld {  // 单行注释
    public static void main(String[] args) {
        System.out.println("Hello,world!");
    }
}
标识符
package 基础;

public class Demo02_标识符 {
    
}
常量
package 基础;

public class Demo03_常量 {
    

    public static void main(String[] args) {
        // 字符串常量:
        System.out.println("abc");
        System.out.println("");

        // 整数常量:
        System.out.println(30);
        System.out.println(-5);

        // 浮点数常量:
        System.out.println(3.15);
        System.out.println(-2.5);

        // 字符常量:
        System.out.println('A');
//        System.out.println(''); 报错,有且必须有一个字符。
//        System.out.println('AC'); 报错

        // 布尔常量:
        System.out.println(true);
        System.out.println(false);

        // 空常量:
//        System.out.println(null);  报错,空常量不能直接打印输出。
    }
}

数据类型
package 基础;

public class Demo04_数据类型 {
    
}

变量
package 基础;

public class Demo05_变量 {
    
    public static void main(String[] args) {
        int num1;
        num1 = 10;
        System.out.println(num1);

        int num2 = 20;
        System.out.println(num2);

        // 修改num1的值
        num1 = 30;
        System.out.println(num1);

        byte by1 = 30;
        System.out.println(by1);
//        byte by2 = 400;  byte的范围: -128 ~ 127
        // 注意:右侧数值的范围不能超过左侧数据类型的取值范围。

        short sh1 = 50;
        long lo1 = 50;
        float fl1 = 2.5F;
        double do1 = 1.2;
        char ch1 = 'A';
        boolean bool1 = true;

//        int a = 10;
//        int b = 20;
//        int c = 30;

        int a, b, c;
        a = 10;
        b = 20;
        c = 30;

        int x = 100, y = 200, z = 300;


    }
}

数据类型转换
package 基础;

public class Demo06_数据类型转换 {
    
    public static void main(String[] args) {
        System.out.println(1024); // 整数,默认为int
        System.out.println(3.14); // 浮点数,默认double

        long num1 = 100L;
        long num2 = 100;
        System.out.println(num1);  // 100
        System.out.println(num2);  // 100
        //如上,加不加L都会输出100,其中发生了数据类型转换。
        

        double dou1 = 2.5F;
        System.out.println(dou1);
        // float -->  double 符合由小到大,发生自动类型转换。

        float fl1 = 3L;
        //  long --> float  符合由小到大,发生自动类型转换。


        // 强制类型转换:
//        int number1 = 100L;
//        直接报错;long --> int  不是由小到大的范围关系,
//        不能发生自动类型转换,需要强制类型转换:
        int number1 = (int)100L;
        System.out.println(number1);


        // long 强制转换为 int类型,发生数据溢出。
        int number2 = (int)6000000000L;
        System.out.println(number2);  // 1705032704

        // double 强制转换为 int,发生数据精度缺失。
        int number3= (int)3.99;
        System.out.println(number3); // 3

        // A字符被当做65进行处理。
        char cha1 = 'A';
        System.out.println(cha1 + 1); // 66
        // 计算机底层会用一个数字(二进制)来代表字符'A',即65
        // 一旦char类型的数据进行了数学运算,则会按一定的规则翻译为数字。


        

        byte byteNum1 = 30; // 等价于   byte byteNum1 = (byte)30;
        System.out.println(byteNum1);

        short s1 = 5;
        short s2 = 8;
//        short result1 = s1 + s2; //报错,左侧需要是int数据类型

        short result2 = 5 + 8;
        System.out.println(result2);
    }
}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/445024.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号