Lesson3-Java语言基础

系列文章目录

提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加
例如:第一章 Python 机器学习入门之pandas的使用


提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

提示:这里可以添加本文要记录的大概内容:

例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。


提示:以下是本篇文章正文内容,下面案例可供参考

一、Java类的结构

1.Java貌似只有.java源文件文件,没有.h头文件

类似于C中的#include<xxx.h>和xxx.lib,又或者是C++中的#include<xxx.h>、using xxx和xxx.lib????---------------------不知道这样说对不对,有待考证!!!

代码如下(示例):

package com.ff; //在当前工程的src/com/ff文件下,有一个first.java的文件,也不是一定需要这个,
                //这个first的类属于包package com.ff
//以下是导入JDK的API类库(有130多个包)
import java.lang.*;//导入JDK的API中java.lang包里面所有的类,为了少写代码
//import java.lang.Boolean;//导入JDK的API中java.lang包里面名叫Boolean的类

public class first {
    int a = 123;//全局变量(成员变量)
    //方法
	public void show() {
		int b = 456;//局部变量
		System.out.println("com.fangcen.first is show!");
	}
}

2.JDK编译出来就只有.class的字节码文件,之后通过JVA(Java虚拟机)解释运行。

3.所有的东西都要在类中,包括什么结构体,枚举、函数(方法)、宏等等------有待考证!

二、数据类型

1.总括

在这里插入图片描述

2.基本数据类型注意事项

  1. 数值型
    1.1 Java没有无符号的类型,都是有符号的;
    1.2 赋值的时候,右侧的数据默认是int型,注意和左边的类型是否一致
long num = 2149737387388;	//错误的,2149737387388超过了int的范围
long num = 2149737387388L/l;//正确的,2149737387388L/l强制将2149737387388变成long
  1. 字符型
    2.1 用两个字节表示,和C/C++不一样
    2.2 转义字符也就只有表示一个字符,不要看到多就吓到了
package Number;

public class First {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		char x = 'a';	       //代表两个字节,c/c++是一个字节
		char c1 = '\\';        //看起来是两个字符,但是其实不然,是一个,不然就用""来表示了
		char char1 = '\u2605'; //看起来这么多,其实也就是一个字符
		
		System.out.println(x);
		System.out.println(c1);
		System.out.println(char1);
		
		char $$$ = 'o';
		System.out.println($$$);	
	}
}
  1. 重要知识点
    对于数值类型的基本类型的取值范围,我们无需强制去记忆,因为它们的值都已经以常量的形式定义在对应的包装类中了。请看下面的例子:
public class PrimitiveTypeTest {  
    public static void main(String[] args) {  
        // byte  
        System.out.println("基本类型:byte 二进制位数:" + Byte.SIZE);  
        System.out.println("包装类:java.lang.Byte");  
        System.out.println("最小值:Byte.MIN_VALUE=" + Byte.MIN_VALUE);  
        System.out.println("最大值:Byte.MAX_VALUE=" + Byte.MAX_VALUE);  
        System.out.println();  
  
        // short  
        System.out.println("基本类型:short 二进制位数:" + Short.SIZE);  
        System.out.println("包装类:java.lang.Short");  
        System.out.println("最小值:Short.MIN_VALUE=" + Short.MIN_VALUE);  
        System.out.println("最大值:Short.MAX_VALUE=" + Short.MAX_VALUE);  
        System.out.println();  
  
        // int  
        System.out.println("基本类型:int 二进制位数:" + Integer.SIZE);  
        System.out.println("包装类:java.lang.Integer");  
        System.out.println("最小值:Integer.MIN_VALUE=" + Integer.MIN_VALUE);  
        System.out.println("最大值:Integer.MAX_VALUE=" + Integer.MAX_VALUE);  
        System.out.println();  
  
        // long  
        System.out.println("基本类型:long 二进制位数:" + Long.SIZE);  
        System.out.println("包装类:java.lang.Long");  
        System.out.println("最小值:Long.MIN_VALUE=" + Long.MIN_VALUE);  
        System.out.println("最大值:Long.MAX_VALUE=" + Long.MAX_VALUE);  
        System.out.println();  
  
        // float  
        System.out.println("基本类型:float 二进制位数:" + Float.SIZE);  
        System.out.println("包装类:java.lang.Float");  
        System.out.println("最小值:Float.MIN_VALUE=" + Float.MIN_VALUE);  
        System.out.println("最大值:Float.MAX_VALUE=" + Float.MAX_VALUE);  
        System.out.println();  
  
        // double  
        System.out.println("基本类型:double 二进制位数:" + Double.SIZE);  
        System.out.println("包装类:java.lang.Double");  
        System.out.println("最小值:Double.MIN_VALUE=" + Double.MIN_VALUE);  
        System.out.println("最大值:Double.MAX_VALUE=" + Double.MAX_VALUE);  
        System.out.println();  
  
        // char  
        System.out.println("基本类型:char 二进制位数:" + Character.SIZE);  
        System.out.println("包装类:java.lang.Character");  
        // 以数值形式而不是字符形式将Character.MIN_VALUE输出到控制台  
        System.out.println("最小值:Character.MIN_VALUE="  
                + (int) Character.MIN_VALUE);  
        // 以数值形式而不是字符形式将Character.MAX_VALUE输出到控制台  
        System.out.println("最大值:Character.MAX_VALUE="  
                + (int) Character.MAX_VALUE);  
    }  
}

三、标识符、命名规则、关键字

1.标识符

简单的说,Java中凡是可以由程序员自己起名字的都叫标识符。其涉及到的结构有:包名、类名、接口名、变量名、方法名、常量名。
① 由26个英文字母大小写,0-9,_ 或 $ 组成。
② 数字不可以开头。
③ 不可以使用关键字(class、int等)和保留字(goto和const),但能包含关键字和保留字。
④ Java中严格区分大小写,长度无限制。(例:class×,Class√)
⑤ 标识符不能包含空格。

2.命名规则

标识符规则例子
类名通常使用名词 ,所有单词首字母大写PandaFamily
方法名通常使用动词开头 ,首字母小写,后续单词首字母大写openDoor()
变量名首字母小写,后续单词首字母大写sisterName
常量名所有字母大写GENDER

3.关键字

eclipse中显示红色的都是关键字。

四、变量和常量

1.变量

内存中分配一段空间,同时空间内的值可以变化,这段空间就被称为变量,给这段空间取个名字就叫做变量名,这段空间内的值就是变量值。----------多么完美的回答!!!!!!!

  1. 定义性声明
    在定义性声明变量时可以赋值,也可以不赋值,但是在使用该变量前,要赋值,还有就是可以用中文名命名变量,因为java是unicode编码!
		int tt2;
		tt2 = 3;//没有这句话就会报错
		System.out.println(tt2);
  1. 分类和有效范围
    ① 成员变量:类体中定义的变量,包括static静态变量(类变量)和实例变量
class var{
	int x = 45;//实例变量
	static int y = 90;//静态变量,可以在类体外使用,“类体.静态变量”,注意和“对象.实例变量”
	                  //的区别,静态变量不属于某个对象????
}

② 局部变量:方法体中定义的变量,只在方法中有用,出了它就通过垃圾回收机制销毁了, 同时,成员变量和局部变量可以重名,但是方法中会使用局部变量,成员变量被隐藏。

2.常量

  1. 分类
    常量有三种类型:静态常量、成员常量和局部常量!
    静态常量(public static 修饰的)作用域是全局的,定义的时候就要赋值,不需要创建对象就可以访问它,在类外部访问形式为 HelloWorld. PI。这种常量在编程中使用很多。
    成员常量,作用域类似于成员变量,但不能修改,定义的时候就要赋值
    局部常量,作用域类似于局部变量,但不能修改,定义性声明的时候可以不复制,后面的话再赋值,但是只能一次!!!
public class HelloWorld {
    // 静态常量
    public static final double PI = 3.14;
    // 声明成员常量
    final int y = 10;
    public static void main(String[] args) {
        // 声明局部常量
        final double x = 3.3;
    }
}

五、运算符

六、数据类型转换

1.隐式类型转换

 小------->大,不用加强制转换

2.显式类型转换

大------->小,加强制转换,而且精度会丢失

七、代码注释和编码规范


总结

以上就是对Java语言基础部分的第一部分。后续是流程控制、字符串、数组、类和对象、包装类、数字处理类…的学习。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值