java1

 JAVA入门
编程
根据自己的想法,将其整理出来,以编程语言的形式,让计算机按照人类的思想去完成操作。

编程需要依靠编程语言完成。

编程语言发展
第一阶段
二进制语言,只有计算机能读懂

第二阶段
汇编语言,计算机和人类都能看懂

第三阶段
编程语言,计算机和人类都能看懂(C,C++,Java,PhP)

Java发展史
略(

JDK环境配置
环境:
软件生活的地方,有些软件被使用时,必须被配置环境。配置环境后,在计算机中任意位置可以启动想要使用的软件

配置环境
path

二级制和十进制转换
 计算机存储单位
最小单位:bit

一个字节 8位

1KB = 1024B

1MB = 1024KB

1GB = 1024MB

1TB = 1024GB

命令提示符
查看网络 : ping

查看计算机相关信息 : ipconfig /all     (有ALL的会更全面)

切换盘符 : 盘名:         (如果要去d盘,就直接打d:)

切换目录: cd 目录名称

启动软件 : 输入应用名称

JDK JRE JVM(三大任务)

 JDK

Java Development Kit Java开发工具包,如果要开发JAVA程序,必须要安装

JRE

Java Runtime Environment Java运行时环境,如果只需运行,那么仅需这个就可以

(environment的缩写怎么能是ele呢)

JVM

Java Virtual Machine Java虚拟机,所有Java代码都是由他帮助我们运行的

三大任务:加载,验证,执行

加载:JVM将字节码文件(.class)加载到内存中

验证:JVM对其进行验证,验证代码是否符合规范

执行:将验证通过的代码执行,内部需要对文件进行管理转化等操作

Java的HelloWorld(记事本、手动编译)
代码解释:

行数1:

public class HelloWorld{
public表示修饰符,公共的意思,表示任意位置均可访问

class表示类的意思,表示该文件是一个普通的类

HelloWorld表示类名,用来表示这个类,类名应与文件名保持一致,如果大小写不一致,将会报错,类名一般是由大写开头的

{ }:表示这个类的代码的范围,类里面的代码不可超过此范围

行数2:

public static void main(String[] args){
main方法, 固定写法,是程序入口,所有Java程序从此开始启动

行数3:

System.out.println("Hello World");
输出,引号里面是什么内容,就会输出什么内容

public class HelloWorld{
    public static void main(String[] args){
        System.out.println("Hello World");
    }
}
将上述代码写在记事本中,并通过重命名更改后缀为.java,

文件后缀可在此进行选择(查看)

然后再上面输入cmd即可直接打开该文件夹,然后输入

javac HelloWorld.java
即可得出如下界面

运行完成后,会在文件夹中多出一个后缀名为.class的文件,可知运行成功

运行.class文件,但是运行时不需要加后缀名,即可运行成功

当文件中输出内容有中文时将会报错

此时,就需要更改编码格式

更改后,文件即可运行成功并输出汉字形式

命令解释:

javac:用来编译java指令

java:用来运行被编译好的类文件

Java跨平台
 同样java文件可在linux中运行

将java文件拖入到linux 中,运行后也会生成.class文件,可知在此也可运行成功

由此可知,JAVA可跨平台

平台,指的就是不同的操作系统

跨平台,同一个java文件,可在win中运行,也可直接在ios,linux操作系统运行

跨平台实现原理,就是能够通过不同系统的JVM进行实现

Java语言
Java注释
注释(跟C语言中是一样的):

单行注释://

多行注释:/*  */

 数据类型
变量的定义、变量命名规则
取名规则:遵循标识符命名规范

标识符:类、方法、变量取名

规范:由数字、字母、下划线、$组成,不以数字开头,不与关键字同名

举例:正确标识符:

_abc123
abc_123
$abc
变量名取名:

遵循标识符命名规范,并且采用小驼峰式命名,即首字母小写,后面单词首字母大写,尽量可做到“望文生义”

举例:正确变量名:

userName
productName
类名取名

遵循标识符命名规范,并且采用大驼峰式命名,即首字母大写,后面单词首字母大写

举例:正确类名

class User {}
class Person{}
class Product{}
方法名取名

遵循标识符命名规范,并且采用小驼峰式命名,即首字母小写,后面单词首字母大写

void getUserName(){
}
练习:

五个变量名:图书编号,图书名,图书作者,图书出版社,图书价格

五个类名:书籍类,作者类,用户类,出版社类名,借阅类

五个方法名:获取作者名,添加书籍,修改书籍,获取用户信息,删除用户信息

关键字
//访问控制
private protected public
//类,方法和变量修饰符
abstract class extends final implements interface native new static
strictfp synchronized transient volatile
//程序控制
break continue return do while if else for instanceof
switch case default
//错误处理
try catch throw throws
//包相关
import package
//基本类型
boolean byte char double float int long short null
true false
//变量引用
super this void
//保留字
goto const

注:1.标识符的名称,不能和关键字同名 

        2.Java对大小写敏感,关键字大写是允许作为标识符名的,但一般尽量避免写相同单词,一般来说,若希望带有,则放在标识符中,额外增加其他词汇共同构成

常量
常量指在程序运行中不会改变的量

常量的分类如下:

        整数常量、字符串常量、字符常量、小数常量、布尔常量、空常量

编写常量:

public class DemoVariable01{
    public static void main(String[] args){
        //编写常量
        //整数常量
        System.out.println(10);
        System.out.println(-10);
        //字符串常量,写在一对引号中的内容
        System.out.println("我爱你!");
        System.out.println("10");
        //浮点数常量,就是一个小数
        System.out.println(3.14);
        //字符常量,就是用单引号包含的内容,如果超出一个字符,将会报错
        //一个中文字也是可以的
        System.out.println('a');
        System.out.println('中');
        //布尔常量 true/false
        System.out.println(true);
        //空常量
        //System.out.println(null);
    }
}

注:空值输出也会报错

 基本数据类型
数据类型 : 用来表示Java语言中使用的数据的方式

分类 : 基本数据类型 和 引用数据类型

基本数据类型:

四类八种:

整数类 : byte  short  int  long

浮点数类 :float  double

字符类 : char

布尔类 :boolean

浮点数二进制转换:以30.25为例

 浮点数:

构成:

第一位:符号位

第二至第九位:指数位

第九位之后:位数位

首先将30.25转换成二进制,小数的二进制转换规则为乘二取整。

由于该数字为整数,所以符号位为0

然后将小数点向前移动,移动到第一个1的后面。根据题目,移动了四位

由于浮点的构成规则,得出的4+127,得到的数字为指数位,并用二进制进行表示,即1000 0011

然后将小数点后的数字补到后面即0 1000 0011 1110 0100

剩下的位数用0进行填补,直到补至32位

注:

1.整数类型,默认为int

2.float类型和int类型字节相同,位数也相同,但是int精度更高

float类型的划分是1个符号位,8个指数位,23个尾数位,精度为23位,int是32位,float取值范围大

3.double类型的划分为1个符号位,11个指数位,52个尾数位,比long类的范围大,精度比long类型低

4,浮点数类型,默认是double类型

变量
在程序的运行中,可以改变的量,本质是内存中开辟的一块空间

变量的声明及使用
格式:

数据类型 变量名 = 值

public class DemoVariable02{
    public static void main(String[] args){
        //声明变量
        //声明整数类型
        //语法:数据类型 变量名 = 值;
        byte b1 = 100;
        //byte b3 = 200;
        //此句将会报错,因为200超出数据类型的范围
        System.out.println(b1);
        //System.out.println(b3);
 
        short s1 = 200;
        System.out.println(s1);
 
        //不可以声明同名变量
        b1 = 110;
        System.out.println(b1);
 
        //long类型
        long l =1000L;
        System.out.println(l);
 
        //float类型
        float f1 = 3.45F;
        System.out.println(f1);
 
        //double类型
        double d1 = 2.57;
        System.out.println(d1);
 
        //字符类型
        char ch = 'A';
        System.out.println(ch);
 
        //布尔类型只有true和false
        boolean b2 = true;
        System.out.println(b2);
    }
}

 注:1.声明的数值不能超过范围

        2.不可以声明同名的变量,但值可以被改变

        3.float类型和long类型变量,后面需要加上后缀,float类型后面加F,long类型后面加L

        4.没有赋值的变量不能被使用,必须要被赋值后才能被调用

        5.变量的使用不能超过作用域(变量生效的范围)

//若在大括号中进行声明,那么该变量的作用域为该括号内
{int number02 = 100;
 System.out.println(number02);
}
//System.out.println(number02);
//此位置则不可使用
        6.变量的其他声明方式(一次声明多个变量)

//声明多个变量

int x,y,z;
x = 100;
y=200;
z=300;
int x1 = 100, y1 = 200,z1 = 300;
        
System.out.println(x);
System.out.println(y);
System.out.println(z);
System.out.println(x1);
System.out.println(y1);
System.out.println(z1);


练习:

声明两个变量 a,b ,a = 10,b=20 ,输出这两个变量,输出内容是 : a的值是 :xx ,b的值是:xx

然后将a和b的值做交换,再分别输出a和b

public class DemoVariable03{
    public static void main(String[] args){
    int a = 10;
    int b = 20;
    System.out.println("a的值是"+a);
    System.out.println("b的值是"+b);
    int c = 0;
    c = b;
    b = a;
    a = c;
    System.out.println("a的值是"+a);
    System.out.println("b的值是"+b);
    }
}


 

类型转换
类型转换,就是大类型和小类型,int和char之间的转换

大类型和小类型:大小类型的区分就是他们取值范围的大小

大小数据类型的转换:

小类型->大类型:隐式的数据转换,一定是安全的,类似于小水杯的水倒在大水杯中,一定可以,但是可能会产生精度丢失的问题

public class DemoVariable04{
    public static void main(String[] args){
    //隐式数据转换,小至大
    
    byte b = 100;
    int i = b;
    System.out.println(i);
    
    //小类型向大类型转换时,会导致精度丢失
    float f1 = 2.51f;
    double d1 = f1;
    System.out.println(d1);
    
    int num = 1234;
    float f2 = num;
    System.out.println(f2);
    
    byte b1 = 50;
    byte b2 = 50;
    //byte b3 = b1 + b2;
    //此语句会导致报错,可运用强制转换
    byte b4 = (byte)(b1+b2);
    System.out.println(b4);
    }
}

 大类型->小类型:显示的数据类型转换

语法: 小类型 = (小类型) 大类型值;

public class DemoVariable04{
    public static void main(String[] args){
    
    //隐式数据转换,大至小
    
    int num01 = 100;
    byte num02 = (byte)num01;
    System.out.println(num02);
    
    //大类型转为小类型,需要强制转换,
    //如果超过了小类型的范围,可以转换成功,但是结果会发生改变
    
    int num03 = 200;
    byte num04 = (byte)num03;
    System.out.println(num04);  
        
        
    double num05 = 2.56;
    float f3 = (float)num05;
    System.out.println(f3);
    }
}

字符转换

public class DemoVariable04{
    public static void main(String[] args){
    //字符
    char ch01 = 'a';
    System.out.println(ch01 + 1); //98
        
        
    float f4 = (float)2.56;   //通过将double类型 2.56强转为float
    float f5 = 2.56f;   //声明的时候,直接声明为float类型
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值