【软件创新实验室2021年暑假集训】Java技术培训——Java基础(一)

Java基础(一)

前言

在学习了Java的前置知识之后,我们真正进入了Java的学习。

今天讲的是Java基础(一),涵盖的内容大致有注释、关键字、标示符、数据类型、常量、变量、作用域

那么废话不多说,直接进入正题

1、注释

首先,向各位抛出一个问题:你写代码的时候会写注释吗?

平时我们写代码,在代码量少的时候,例如一个test文件,我们自己一看就懂,这个基本不会使用注释

但是一旦涉及到复杂的项目,注释这个东西是必不可少的

养成一个书写规范注释的习惯是真的非常有帮助!

img

  • Java中的注释有三种:
    • 单行注释
    • 多行注释
    • 文档注释
// 这里是单行注释

/*
这里是多行注释
这里是多行注释
*/

// JavaDoc,文档注释
/**
 * @Description HelloWord
 * @Author woodwhale
 */

2、关键字

Java关键字是对Java编译器有特殊含义的字符串,是编译器和程序员的一个约定,程序员利用关键字来告诉编译器其声明的变量类型、类、方法特性等信息。Java语言共定义了如下所示的关键字。

image-20210705160029297

其中goto和const从未使用,但也被Java作为关键字保留。

关键字都是小写的!

3、标识符

Java语言中对于变量、常量、方法和类等要素命名时使用的字符序列统称为标识符。

标识符命名规则

  • 标识符由字母、下划线、美元符号或数字组成且不能由数字开头
  • 首字符之后可以是字母、美元符、下划线或者数字的任何字符组合
  • 标识符大小写敏感(如name和Name是两个不同的标识符)
  • 不能使用关键字作为变量名或方法名

可以用中文去命名变量,但是又没有完全可以(非常不推荐,涉及到编码问题)

注意:标识符选取尽量“见名知意”。

例:姓名尽量选择类似name而不是a、b

驼峰命名法则

  • 当变量名或函数名是由一个或多个单词连结在一起,而构成的唯一识别字时,第一个单词以小写字母开始;从第二个单词开始以后的每个单词的首字母都采用大写字母,例如:firstName、lastName,这样的变量名看上去就像骆驼峰一样此起彼伏.

4、数据类型

语言又可以分为强烈类型语言和弱类型语言

强类型语言(Java、python…)

  • 要求变量的使用要严格符合规定,所有的变量都必须先定义后才能使用

弱类型语言(JavaScript…)

  • 变量的使用没那么严格,数据类型可以随意转换

4.1 数据类型的分类

Java的数据类型分为两大类:

  1. 基本类型
  2. 引用类型

基本数据类型

基本数据类型包括两大类:

  1. 数值类型
  2. 布尔类型

数值类型中有整数、浮点数、字符

整数:byte(1字节)、short(2字节)、int(4字节)、long(8字节)

浮点数:float(4字节)、double(8字节)

字符:char

布尔类型就是boolean(1字节),true、false。

什么是字节?

  • 位(bit):是计算机内部数据存储的最小单位。10101010是一个八位二进制数。
  • 字节(byte):是计算机中处理数据的基本单位,习惯上用大写B来表示
  • 字符:是指计算机中使用的字母、数字、字和符号

单位换算

  • 1B = 8bit
  • 1024B = 1KB
  • 1024KB = 1MB
  • 1024MB = 1GB
  • 1024GB = 1TB

引用数据类型

Java中引用数据类型就是:类、接口、数组

  • 引用类型指向一个对象,指向对象的变量是引用变量。这些变量在声明时候被指定为一个特定的类型,声明之后不能改变。
  • 引用数据类型包括:类(对象)、接口、数组。
  • 所有引用类型默认值都是null.
  • 一个引用变量可以用于引用任何与之兼容的类型。

例如,我们熟知的String在Java中是一个类,它属于引用数据类型

引用数据类型的变量定义及赋值有一个相对固定的步骤或格式。

  • 数据类型 变量名 = new 数据类型();

每种引用数据类型都有其功能,我们可以调用该类型实例的功能。

  • 变量名.方法名();

4.2 简单的数据类型的转换

由于Java是强类型语言,所有要进行有些运算的时候,需要用到类型砖转化

运算的时候,不同的数据先转化为同一数据类型,然后再进行计算

简单数据类型由低级到高级分别为(byte,short,char)—int—long—float—double

类型转化分为两类:

  1. 强制类型转化(高到低)

    强制类型转化不安全,可能造成溢出问题或者精确度下降

int i = 128;
byte j = (byte)i;
  1. 自动类型转化(低到高)
byte b = 1;
int i=b;
long l=b;
float f= b;
double d = b;
  1. 包装类过渡类型转换

    Java的包装类型对应于其基本类型一共有八类,分别为:Boolean、Byte、Short、Character、Integer、Long、Float、Double。
    在进行简单数据转换的时候,可以利用包装类型进行中间过渡。例:

        short s = 99;
//        byte b = s;
        Short s1 = s;
        byte b = s1.byteValue();

java的包装类型中,数值类型提供了除Character和Boolean之外的其他所有六种基本类型的转换,因此通过包装类型进行转换亦是一种有效手段。

4.3 字符串类型的数据转化

有以下三种方法

  1. 将基本数据类型与空字符串("")连接(+)即可获得对应的字符串
  2. 调用String类中的valueOf()方法返回相应字符串
  3. 使用包装类的toString()方法。几乎从java.lang.Object派生出来的所有类型都提供了toString()方法

分别举个例子

int a = 114;
String b = Integer.valueOf(a).toString();
System.out.println(b);
int a = 514;
String b = a + "";
System.out.println(b);
int a = 1919;
String b = String.valueOf(a);
System.out.println(b);

114

514

1919

5、变量

变量是什么:拥有变化能力的量

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

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

type valueName [= value] [{
    
    ,valueName [= value]}];
// 数据类型	变量命名 = 值;
// 可以用逗号隔开来声明多个同类型变量

注意事项:

  1. 每个变量都必须有类型,可以是基本类型,也可以是引用类型
  2. 变量铭必须是合法的标识符
  3. 变量声明是一条完整的语句,因此每个声明都要用分号结束

6、变量作用域

变量一共有三种:

  1. 类变量
  2. 实例变量
  3. 局部变量
public class test {
    
    
    static int classVal = 0;        // 类变量(可以在类中直接使用)
    String str = "hello world!";    // 实例变量(从属于对象,通过类使用,可以不用初始化)
    public void method() {
    
    
        int i = 0;                  // 局部变量(必须声明和初始化值)
    }
}

7、常量

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

所谓常量可以理解为一种特殊的变量,一旦它的值被设定,在程序运行的过程中不允许被改变

常量一般用 大写

final double PI = 3.1415;

8、Scanner类

属于引用类型,使用该类来完成用户键盘录入,获取到录入的数据。

使用步骤

导包:import java.util.Scanner;
创建对象实例:Scanner sc = new Scanner(System.in);
调用方法:
int i = sc.nextInt(); 用来接收控制台录入的数字
next()和nextLine()用来接收控制台录入的字符串,在读取前我们一般需要使用hasNext()与hasNextLine()判断是否还有输入的数据.

next():

  1. 一定要读取到有效字符后才可以结束输入
  2. 对输入有效字符之间遇到的空格,next()方法自动将其去掉
  3. 只有输入有效字符后,才将其后面输入的空白作为分隔符或结束符
  4. next()不能得到带有空格的字符

nextLine():

  1. 以Enter(回车键)为结束符,也就是说nextLine()方法返回的是输入回车之前的所有字符
  2. 可以获得空格

9、helloworld程序

public class HelloWorld {
    
    //public表示访问控制中的公开,class是定义一个类,HelloWorld表示一个类名
    /**
    *public 公开的 
    *static 静态 
    *main是方法名
    *String[] args是main方法的形式参数列表
    *是一个程序的执行入口
    */
    public static void main(String[] args) {
    
    
        System.out.println("Hello world!");		// 标准输出,打印到控制台。
    }
}

猜你喜欢

转载自blog.csdn.net/woodwhale/article/details/118497141
今日推荐