day-77:java入门

计算机结构

在这里插入图片描述

JDK,JRE,JVM

在这里插入图片描述JDK: Java Development Kit (Java开发工具)
JRE: Java Runtime Environment (Java运行环境)
JVM:Java Virtual Machine (Java虚拟机)

JVM就像是小型的CPU处理java相关的东西,JRE只要安装了就可以运行Java,但是作为开发者需要JDK,而一般下载了JDK就会包含JRE。

JDK文件目录介绍

在这里插入图片描述bin: 包含一些可执行程序,比如java.exe, javac.exe(编译工具)
include:jdk是由c和c++编写的,所以包含c和c++的一些头文件
jre:java运行时的环境

Java程序运行机制

编译型:将一段程序全部编译完后再执行
解释型:编译一条语句之后直接执行,然后再编译下一条语句

编译型的效率更高,因为已经把所有的都翻译好了只用执行,所以操作系统,c/c++等都是编译型的
解释型的速度不高,但随着现在硬件技术的不断提升,解释型的速度和编译型相比并不差多少,两者的边界已越来越模糊。

Java是包含了两种类型,更偏向于解释型,它是先编译成字节码,然后运行时通过JVM到操作系统时才一步一步解释成机器码。

在这里插入图片描述

javac命令编译成*.class文件

Java开发工具:IDEA

IDEA有很多简便的方法:
比如输入psvm就能打印出private static void main(…)语句,输入sout就能打印出System.out.println语句
可以百度搜索“IDEA优化”

Java——标识符

Java所有的组成部分都需要名字。类名、变量名以及方法名都被称为标识符。
关键字:String不是关键字!而是一个类
在这里插入图片描述
标识符的注意点:
在这里插入图片描述

Java数据类型

强类型语言:有严格的规定,所有变量都必须先声明再使用。
java安全性高,但是速度慢
在这里插入图片描述

类型转换

由于Java是强类型语言,所以在进行运算时有时候需要转换。

低---------------------------------------------->高
byte,short,char->int->long->float->double

运算中,不同类型的数据要先转换成同一类型才能进行运算。

变量

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

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

//程序可读性
        int a=1;
        int b=2;
        int c=3;
        String name="sunny";
        char x='X';
        double pi=3.14;

注意事项:

  • 每个变量都有类型,类型可以是基本类型,也可以是引用类型(String)
  • 变量名必须是合法的标识符
  • 变量声明是一条完整的语句,因此每一个声明必须以分号结束

变量作用域

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

    //类变量 static ,从属于这个类,和这个类一起出来一起消失
    static 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);

        //实例变量 :变量类型 变量名字 =new Demo08();
        Demo08 demo08 = new Demo08();
        System.out.println(demo08.age);//输出0
        System.out.println(demo08.name);

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

    }
}

常量

常量(constant):初始化之后不能再改变值

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

public class Demo09 {
    //static 和final都是修饰符,不存在先后顺序
    static final double PI=3.14;
    public static void main(String[] args) {

        System.out.println(PI);
    }
}

常量名一般使用大写字符

变量的命名规范

类成员变量,局部变量,方法名:首字母小写和驼峰原则:monthySalary

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

常量:大写字母和恶下划线:MAX_VALUE

基本运算

二元运算

public class Demo01 {
    public static void main(String[] args) {
        //二元运算符
        //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/(double)b);//如果不加double,则会等于0.5,但是是int型,所以会抹去小数输出0
    }
}

赋值运算:

public class Demo02 {
    public static void main(String[] args) {
        long a=123456556445353L;
        int b=123;
        short c=10;
        byte d=8;

        //规则:对于整型:如果有Long类型则结果为Long类型,否则为int类型
        //整型中如果有double则输出为double
        System.out.println(a+b+c+d);//Long
        System.out.println(b+c+d);//int
        System.out.println(c+d);//int
    }
}

关系运算&模运算

public class Demo03 {
    public static void main(String[] args) {
        //关系运算符返回的结果:正确,错误  布尔值
        //if
        int a= 10;
        int b=20;
        int c=11;

        //取余,模运算
        System.out.println(c%a);

        System.out.println(a>b);
        System.out.println(a<b);
        System.out.println(a==b);
        System.out.println(a!=b);
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值