java前言

目录

一、IT前沿技术

二、了解Java的基本作用

三、学习的步骤和内容

环境变量path的作用:

jdk的结构及其作用

jdk是Java开发工具包

手动写基于jdk的第一个java程序步骤如下:

java语言的基本特征

书写Java类文件的基本规则

给电脑配置双环境变量:

java中的八大基本数据类型

Java中的引用数据类型

基本数据类型在程序中的使用

基本数据类型之间的数据转换

关于for的小技巧:

continue 和 break(continue只是表示跳过并不会直接跳出循环)

类中的属性可以直接在main方法中使用吗?

关于java中正数和负数的取整操作?


一、IT前沿技术

  • 云计算,基于大量计算机及网络连接中的集中或分布式的计算和存储。
  • 大数据,针对p级以上的数据处理及存储技术。
  • 人工智能,利用计算机的算术和逻辑运算能力模拟人的智力的行为。

二、了解Java的基本作用

  • 它是一门编程语言,它具有基本的语法要求,提供了53个关键字,它自带虚拟机(JVM),同时提供了大量的api(应用编程接口)。
  • 同时它是一种技术栈,具有可供Java项目工程所使用的框架和中间件以及工具等。
  • 有专门为Java的后台应用程序所打造的应用服务器。如tomcat
  • 用Java所创建的应用项目在互联网上得到了广泛的应用。

三、学习的步骤和内容

  • java的基础,建立面向对象的编程思想。
  • Java的高级技术,利用一些核心api实现基础及重要的功能。
  • 前端技术,利用html,css,javascript语言以及一些框架实现的基本的用户界面。用户界面程序运行在浏览器上。
  • 基于应用服务器学习javaWeb的开发技术。(servlet 监听器 过滤器)
  • Java基础框架。(ssm  springboot )
  • 分布式项目开发 。(zookeeper)
  • 微服务项目(springcould,dubbo)

环境变量path的作用:

在cmd环境下,用户无论在哪个磁盘路径下,都可以执行path变量所规定路径下的文件或程序!

jdk的结构及其作用

• JDK = JRE + 开发工具集(例如Javac编译工具等)

• JRE = JVM + Java SE标准类库

jdk是Java开发工具包

1、与Java开发相关的工具,包括编译、运行、打包、生成文档、监控等工具,他们存在于bin目录,以exe结尾。

2、与java程序执行相关的环境,jre目录。jre(java运行环境)。Java程序运行的电脑上必须要有jre,否则不能运行。jre主要包含两个部分,一个是jvm,另一个是api的库文件。

《dll动态链接库文件 同jar包 可供调用》

手动写基于jdk的第一个java程序步骤如下:

1.创建文本文件:

        驼峰式命名,扩展名为java

2.文本编辑器编写:

        在文件中总按照Java类的编码规则写一个简单的Java程序

        LInux指令进入目录:

        在相应的文件夹下敲cmd可直接进入终端文件夹 !

        通过dir命令展示文件目录

3.编译文件

        jre环境只能执行字节码文件,需要把上面的源文件(.java)中的源代码用jdk中的编译器

        转换为字节码文件(.class)。

        采用的工具是Javac.exe 

        Linux:javac HelloWorld.java

        至此编译成功!

4.运行Java程序

        采用的工具是Java.exe 

        Linux:java HelloWorld

总结:Java程序的执行步骤

​     (1)编写源代码 

​     (2)编译源代码,生成字节码文件。

​     (3)  执行字节码产生结果。

java语言的基本特征

(1)面向对象,在Java程序中是以类为基本单位的,类需要转化成对象才能执行。

(2)跨平台,同一份字节码文件可以在不同的操作系统下执行,因为不同的操作系统有        

        不同的jvm,jvm可以把字节码转换为不同操作系统所能够识别的机器码。这是Java与

        其他语言显著的区别。

(3)多线程,一个程序可以在多个cpu上同时执行,大大提高了程序的执行效率。

书写Java类文件的基本规则

(1)类名首字母大写,文件名与类名相同

(2)在文件中至少有一个类,如果有多个类,与文件名相同的类必须是public的 ,其他类可以另外命名

(3)要有main方法 程序的入口

(4)项目工程的实现都是通过main来调用其他方法或启动线程来实现的

给电脑配置双环境变量:

安装1.8自动生成 可以删掉 便于切换jdk11版本

C:\Program Files\Common Files\Oracle\Java\javapath

要使用jdk11的时候哦直接把8改成11就ok!

java中的八大基本数据类型

   byte类型的表示范围从-128至127   字节类型,表示(一个字节)也就是八位二进制数

​   short类型的表示范围从-32768至32767   短整型,表示(两个字节)也就是十六位二进制数

​    int类型的表示范围从-2147483648至2147483647  整形,表示(四个字节)也就是三十二位数      二进制    

​    long类型的表示范围从-9223372036854775808至9223372036854775807 长整形,表示

  (八个字节)六十四位二进制数

​     char 字符类型,用unicode编码表示一个字符,一个字符用两个字节,可以表示65536个字符

​     float 单精度小数 也称浮点数,它是不精确的,(四个字节)范围:1.4E-45至

     3.4028235E38   float的有效数字是6至7位。最好不要超过6位 超过建议用double。

​      double 双进度小数 也是浮点数,它是不精确的,(八个字节),范围:4.9E-324至        1.7976931348623157E308        范围比flloat大

​      boolean 布尔型 范围只有 true or flase 

      BigDecimal 类可解决计算精度问题

Java中的引用数据类型

分为 :类,接口,枚举,注解

string属于Java中的字符串类型,也是一个引用类型,并不属于基本的数据类型。

基本数据类型在程序中的使用

  • 直接量 如123,57,‘a',true
  • 变量:

    它在程序中用来表示一份数据,该数据可以是任何类型

    变量有名称 可以为空(null)

float f = 93.435234;//编译错误 因为小数类型默认是double
float f = 93.435234f;//正确写法
byte b =12;//内部隐藏着类型转换 整数类型默认为int

基本数据类型之间的数据转换

Java是强类型的语言 ,在不同的变量之间存在着类型的相互转换。

首先,大家要清楚八个基本数据类型有强弱关系,也就是占据字节数越多(范围越大)的类型越强,反之越弱。

由若到强的的排列如下:

byte short(char) int long float double

float比long强的原因是float就算是四字节 但是小数表示范围比long大 认为float类型比long强。

1.强制类型转换

把强类型转换为弱类型,需要进行强制类型转换 如8字节转4字节 实质会丢失4字节 会造成数据精度丢失造成结果的错误。

int f = 100;
short g;
g=(short)f;
System.out.println(g);//100
int f = 40000;
short g;
g=(short)f;
System.out.println(g);//-25536 结果错误

出现错误是由于40000超过了short的表示范围。强转造成结果错误

字符类型与整形之间可以转换,字符转short需要强转(且结果与Ascii码有关),

转int和long不需要 -------》弱类型转强类型

char i = '5';
int i1 = i;//自动类型转换
System.out.println(i1);//53而不是5

自动类型转换

把弱类型转换为强类型,不会产生结果的错误

i=b;//byte转int

js中===与==的区别

1、===:称为等同符,当两边值的类型相同时,直接比较值,若类型不相同,直接返回false;

2、==:称为等值符,当等号两边的类型相同时,直接比较值是否相等,若不相同,则先转化为类型相同的值,再进行比较;

短路与 && 若左边表达式为假 则右边表达式根本不计算

非短路与& 即使左边表达式为假 右边依然运算

一般编程中使用短路与!!!!

短路或同理:下面例子输出结果不为11而是10

int a  =10;
if (a>2||++a>5){//左边直接判断为真
    System.out.println("a = " + a);//10
}

流程控制语句

int score  = 85;
//条件值大的范围放在最上面
//不用指出每个范围封闭式的判断 
if (score>=90){
    System.out.println("优秀");
}else if(score>=80){
    System.out.println("良好");
}else if (score>=70) {
    System.out.println("一般");
}else{
    System.out.println("差");
}

switch的流程控制:

int score = 75;
switch (score/10){
        case 10:
        System.out.println("满分");
        //break;
        case 9:
        System.out.println("优");
       // break;
        case 8:
        System.out.println("良");
       // break;
        case 7:
        System.out.println("一般");
        //break;
        case 6:
        System.out.println("差");
        //break;
    default:
        System.out.println("进厂拧螺丝");

}

若没有break可以看出从符合的地方开始执行直至结束 default中的内容也会执行

关于for的小技巧:

当for中什么都不写时:无限循环!

int i = 0;
for ( ;; ) {
    System.out.println("i = " + i);//无限循环输出0
}

while语句 :使用while来控制输出,范围控制,通过变量的范围来控制输出的内容

  int n = 0;
    while (n < 10) {
        System.out.println("n = " + n);
        n++;
    }
    System.out.println("end n = " + n);
}

do while循环

先执行循环体后判断,因此至少会执行一次

int m =0;
do{
    System.out.println("m = " + m);
    m++;
}while(m<10);

嵌套循环

再循环体中还有循环语句

for (int i = 0; i < 5; i++) {
    for (int j = 0; j < 10; j++) {
         System.out.print("*");
    }
    System.out.println();
}

continue 和 break(continue只是表示跳过并不会直接跳出循环)

continue 只能用于循环体中 表示跳过此条循环语句 接着执行下一条

for (int i = 0; i < 10; i++) {
    if (i==5){
        continue;//跳过5
    }else{
        System.out.println("i = " + i);
    }
}

break可以用于循环体中 表示跳出循环 终止所有循环

类中的属性可以直接在main方法中使用吗?

class Child extends Parent{

    int a ;//默认初始值为0
    public static void main(String[] args) {
        int i;
        i=a;//这样赋值是错误的 main方法里面调属性要用对象调 不然找不到非静态变量a 编译错误
        
    }

//但是在方法中这样调是完全OK的
public class Parent {
    int a ;

    public void methodOne(){
        int j ;
        j=a;
        System.out.println(j);
    }
}

关于java中正数和负数的取整操作?

        int hg = (int) -10.9;
        int gh = (int) 10.9;
        System.out.println(hg);
        System.out.println(gh);

整体操作都是忽略小数直接取整数!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值