java基础知识点

知识点

标识符

用户定义命名的字,其作用是用于标识常量、变量、文件、类、方法等的名字。

开始字符可以是字母,下划线,$符号之一,推荐字母开头。

组成可以是字母、下划线,数字、$。

注意:Java语言严格区分大小写

注释

行注释 //

块注释 /* */

文档注释 /** */

注意:文档注释只能放在类块前与类块内的函数块前,如果放在函数块内部,则被当成块注释。

在文档注释中可以使用HTML标记来得到一些定制的格式。
同时javadoc还支持一些特殊的标注。

@author 作者名
@version 版本标识
@parameter 参数名及其意义
@since 最早出现的JDK版本
@return 返回值

命名规则

类名:首字母大写,通常由多个单词合成一个类名,要求每个单词的首字母也要大写。

例如: class HelloWorldApp

方法名:往往由多个单词合成,第一个单词通常为动词,首字母小写,中间的每个单词的首字母都要大写。例如:getName,setName

变量名:全小写,一般为名词,例如: length。

常量名:基本数据类型的常量名为全大写,如果是由多个单词构成,可以用下划线隔开,例如:
int YEAR, int WEEK_OF_MONTH;

数据类型

Java语言有8种基本数据类型。

  • 逻辑类型:boolean。 1字节

  • 整数类型: 默认数据类型是十进制的int型。与C语言一样,八进制数以0开头,十六进制数以0x或0X开头。在Java 7中开始有了突破,整型类型数据可以用二进制数形式来表示了,在二进制数值前加0b或0B即可。
    ·1字节整数类型:byte。
    ·2字节整数类型:short。
    ·4字节整数类型:int。
    ·8字节整数类型:long。一个整数常量后带有L,则表示long型数据。

  • 字符类型:char。 2字节

    ·直接通过字符来表示 如’a’

    ·转义字符 如“\”表示\

    ·使用数值来表示 格式是\uXXXX,其中XXXX代表一个十六进制的整数

  • 小数类型:
    ·4字节小数:float。 对于float型小数常量,需要在小数后加f或F
    ·8字节小数:double。一个实数常量的默认类型是double,无特殊要求时建议选择double类型

    隐式转换规则

    byte: short int long float double
    char: int long float double
    short:int long float double

    int: long float double
    long: float double
    float: double

变量的作用域与他定义的位置和修饰符号有关。

通常变量可以在两个位置定义:
在类块中定义—成员变量
在函数块中定义—局部变量

static只能修饰在类块中定义的变量,不能修饰函数块中定义的变量。

static修饰的变量使用方式:类块名.变量名

class   ClsA{
         static int m_a=20;		//全局变量
}

System.out.println(ClsA.m_a);

格式化输出

System.out.printf(“格式控制部分”,表达式1,表达式2,…表达式n)

格式控制部分由格式控制符号:%d、%c、%f、%s和普通的字符组成,普通字符原样输出。格式符号用来输出表达式的值。

%d:输出int类型数据值
%c:输出char型数据。
%f:输出浮点型数据,小数部分最多保留6位
%s:输出字符串数据。

instance of运算符是二目运算符,左边的操作元是一个对象,右边是一个类 如:p1 instance of Person

当左边的对象是右边的类或子类创建的对象时,该运算符运算的结果是true,否则是false

数组的定义

类型[] 数组名;

类型 数组名[]; //不推荐用

类型[] 数组名1,数组名2,……;

类型 数组名1[],数组名2[],…….;//不推荐用

数组初始化

数组名=new 类型[变量个数]; //对已经定义的数组进行空间分配
类型[] 数组名=new 类型[变量个数]; //在申明数组的时候同时进行空间分配

数组中变量初始化

int []   arr=new int[4];	//方式一:对数组每个变量逐一初始化。
arr[0]=1;
arr[4]=5;		//非法:数组不能越界	
 
int []   arr=new int[]{1,2,3,4};     //注意:不要指定变量个数。
                                      //方式二:在分配空间的时候批量初始化。

int[]   arr={1,2,3,4};//方式三:在声明的时候new int[]可以省略

栈内存和堆内存

Java把内存划分为两种:一种是栈内存,另一种是堆内存。
在函数中定义的一些基本类型的变量和数组、对象的引用变量都是在函数的栈内存中分配;
堆内存用来存放由new创建的对象和数组,在堆中分配的内存,由Java虚拟机的自动垃圾回收器来管理;

声明数组或对象时,仅是在栈内存定义了一个特殊类型的变量,这个变量用来存放堆内存中为数组或对象分配的内存空间的首地址,这样,栈中的这个变量就成了数组或对象的引用变量,以后就可以在程序中使用栈中的引用变量来访问堆中的数组或对象了。

引用变量是普通的变量,定义时在栈中分配,引用变量在程序运行到其作用域之外后被释放;而数组和对象本身在堆中分配,即使程序运行到new产生数组和对象的语句所在的代码块之外,数组和对象占用的内存不会被释放,数组和对象在没有引用变量指向它时,才会变为垃圾,不能再被使用,在随后一个不确定的时间被垃圾回收器收走(释放掉)

 Student s1;
  s1 = new Student(“张三”);
  Student s2 = new Student(“李四”, 16);

java基础知识点_第1张图片

Arrays工具------操作数组的一个强大工具

复制
public static int[] copyOf(int[] original,int newLength)
含义:把参数original指定的数组中从索引0开始的newLength个元素复制到一个新数组中,并返回这个新数组。
public static int[] copyOfRange(int[] original,int from,int to)
含义:把参数original指定的数组中从索引from开始到 to-1的元素复制到一个新数组中,并返回这个新数组。

注意:1、Java不允许在声明数组的方括号内指定数组元素的个数
2、必须使用new关键字创建数组然后才能进行数组的赋值和使用
3、Java特有的访问数组的方式:
for (声明循环变量:数组的名字){

}//注意:声明的循环变量的类型必须和数组的类型相同
4、Java支持不规则数组
5、Java提供了工具类Arrays访问数组

枚举类型

修饰符 enum 枚举名{
枚举值1,枚举值2,……[;]
//如果没有其他成员,分号可以省略
}

enum  Season{
 	SPRING,SUMMER,AUTUMN,WINTER
 }

声明了一个枚举类型后,就可以用该枚举类型的枚举名声明一个枚举变量了,例如:Season x;

枚举变量x只能取枚举类型中的常量,通过使用枚举名和“.”运算符获得枚举类型中的常量。

例如: X = Season.SPRING;

你可能感兴趣的:(java基础知识点)