▏标识符与关键字
入口方法
public class 类名{
    public static void main(String[] args){
    }
}
public 公共的        class 类        static 静态的        void 无返回值
main 主要的         String 字符串     args 参数        System 系统的
out 输出设备        in 输入设备         print 打印

| Java标识符的命名规则

  1. 标识符由字母、数字、下划线(_)、美元符号($)组成,没有长度限制
  2. 标识符的首字母必须是字母、下划线或美元符号
  3. 标识符是区分大小写的
  4. 常量通常以大写英文字母组成
  5. 类标识符通常以大写英文字母开始
  6. Java关键字、保留字不能作为用户自定义标识符使用

Java中的关键字和保留字

Java 判断类型是否为timestamp java判断类型的方法_运算符

| 数据类型

数据类型

关键字

所占位数

默认值

取值范围

布尔型

boolean

8

false

true,false

字节型

byte

8

0

-2^7~2^7-1

短整型

short

16

0

-2^15~2^15-1

整型

int

32

0

-2^31~2^31-1

长整型

long

64

0

-2^63~2^63-1

单精度型

float

32

0.0

3.4e^-38~3.4e^38

双精度型

double

64

0.0

1.7e^-308~1.7e^308

字符型

char

16

'\u0000'

'\u0000'~'\uFFFF'

自动类型转换优先级

(byte、short、char)--> int --> long --> float -->double

Java 判断类型是否为timestamp java判断类型的方法_运算符_02

| 运算符与表达式

算术运算符

分类

运算符

名称

示例

示例描述

+

加法

A+B

A加B

-

减法

A-B

A减B

*

乘法

A*B

A乘B

/

除法

A/B

A除B

%

取余

A%B

取余数

+

正号

+A

正A

-

负号

-A

负A

++

自增

++A,A++

自加1

--

自减

--A,A--

自减1

关系运算符

运算符

名称

示例

示例描述

==

等于

A==B

A等于B吗?

!=

不等于

A!=B

A不等于B吗?

>

大于

A>B

A大于B吗?

<

小于

A

A小于B吗?

>=

大于等于

A>=B

A大于等于B吗?

<=

小于等于

A<=B

A小于等于B吗?

逻辑运算符

运算符

名称

示例

示例描述


逻辑非

!A

A为true时,结果为false

&&

逻辑与

A&&B

A、B同为true,结果为true,否则为false

||

逻辑或

A||B

A、B同为false,结果为false,否则为true

^

逻辑异或

A^B

A、B同为true或false时,结果为false,否则为true

赋值运算符

运算符

示例

示例表达式等价于

+=

A+=B

A=A+B(两数相加)

-=

A-=B

A=A-B(两数相减)

*=

A*=B

A=A*B(两数相乘)

/=

A/=B

A=A/B(两数相除)

%=

A%=B

A=A%B(两数求余)

&=

A&=B

A=A&B(两数按位与)

|=

A|=B

A=A|B(两数按位或)

^=

A^=B

A=A^B(两数按位异或)

<<=

A<<=B

A=A<

>>=

A>>=B

A=A>>B(A带符号右移B位)

>>>=

A>>>=B

A=A>>>B(A无符号右移B位)

位运算符

分类

运算符

名称

示例

运算符说明

~

按位取反

~A

1变成0,0变成1

&

按位与

A&B

同为1,结果为1,否则为0

|

按位或

A|B

同为0,结果为0,否则为1

^

按位异或

A^B

不同为1,相同为0

<<

左移

A<

移出高位补低位

>>

带符号右移

A>>a

移出低位,逐次右移

>>>

无符号右移

A>>>a

符号位右移,高位补0

| 流程控制语句

// if语句语法:if(条件){}// if-else 语句语法:if(条件){}else{}// switch语句switch(表达式){  case 常量1:表达式1;break;  case 常量2:表达式2  case 常量3:表达式3  default: 表达式n;}// while语句语法:while(表达式){// 执行语句}// do while语句do{// 语句}while(表达式);

举个例子吧

---------------猜大小-----------------import java.util. Scanner;public calss Demo{  public static void main(String[] args){    Scanner in  = new Scanner(System.in);    Random ComputerRandom = new Random();    int A- = ComputerRandom .nextInt(101);    int number;    do{      System.out.println("请猜一下电脑随机生成的随机数!");      number = in.nextInt();      if(number        System.out.println("小了。。。");      }else if{      System.out.println("大了。。。");      }    }while(number!=A);    System.out.println("恭喜你,猜对了!");  }}

| 数组

栈区:存放函数的参数值,局部变量的值
优点:存取速度比堆区快
缺点:存在栈区的数据大小与生命周期必须是确定的,无灵活性
堆区:存放由new创建的对象和数组
优点:可以动态分配内存
缺点:要在运行时分配内存,运行速度慢一维数组
语法:数据类型 数组名[];
          数据类型[] 数组名;
1、边声明边赋值:int[] arr = {12,4,33};
                itn arr[] = {3,4,5};
2.动态地从键盘录入信息并赋值

Scanner in = new Scanner(System.in);
    for(int i = 0;i<30;i++){
        arr[i] = in.nextInt();
    }二维数组


创建二维数组并指定数组大小
int [][] arr = new int[5][7];

举个例子吧

----------------- 求平均值-------------------import java.util.Scanner;public calss Demo{  public static void main(String[] args){    Scanner in = new Scanner(System.in);    System.out.println("请定义学生的人数:");    int num = in.nextInt();//用来定义数组长度    int[] arr = new int[num];    int sum = 0; //记录总成绩    for(int i=0;i     System.out.println("请输入第"+(i+1)+"个学生的成绩:");     arr[i] = in.nextInt();     sum+=arr[i];    }   System.out.println(arr.length+"个学生的平均分是:"+sum/arr.length);  } }

| 注释
1、单行注释 “//”
2.多行注释     以“ /*“ 开始以“  */ ”结束
3.文档注释 以“ /** ”开始以“ */ ”结束| 类与对象
1.必须使用new关键字创建对象
2.同一个类的每个对象有不同的成员变量的存储空间
3.同一个类的每个对象共享该类的方法| this关键字作用:
1.用来区分局部变量和成员变量同名的情况
2.代表它的所在函数(方法)所属对象的引用
3、构造函数之间的调用
4、构造函数之间的调用,this只能在第一行| 构造方法
1、使用new+构造方法创建新的对象
2、构造方法是定义在Java类中的一个用来初始化对象的函数
3、构造函数与类同名且没有返回值| 构造代码块
作用:给所有的对象进行初始化

举个例子吧

public calss Demo{  public static void main(String[] args){   Person A = new Person();   } } class Person{   String name;   Person(){   System.out.println("我是无参构造方法");   }   person(String name){     this.name=name;     System.out.println("我是有参构造方法");   }   {     System.out.println("我是构造代码块");   } }

| static关键字作用:是一个修饰符,用于修饰成员(成员变量、成员方法)
1、被static修饰后只分配一个固定的空间,被所有对象共享
2.可以使用类名.静态成员进行访问特点:
1、随着类的加载而加载
2、优先于对象的存在
3、被所有的对象所共享
4、可以直接被类名所调用注意事项:
1.静态的方法只能访问静态的成员变量
2、非静态的方法既能访问静态也能访问非静态的成员
3、静态的方法中不可以定义(this、super)关键字

| 类
封装:生成set和get方法
继承(extends):子类拥有父类的成员,除被private修饰的外
多态:父类引用指向子类对象
多态的前提:
1、必须有继承或实现关系
2、必须有重写
接口(interface):是一个特殊的抽象类
注意:
1、接口不可以创建对象,需要被子类实现
2、接口中只能出现public访问修饰符

抽象类(abstract):

  1. 抽象方法一定要在抽象类中
  2. 抽象类和抽象方法必须要被abstract关键字修饰
  3. abstract只能修饰类和方法
  4. 抽象类不能被创建对象
  5. 抽象类中可以定义非抽象方法
  6. 子类如果只重写一部分的抽象方法,那么该子类还是一个抽象类

包(package):
作用:
1、对类进行分类管理
2、给类提供了多层命名空间

成员变量访问控制修饰符

类型

private

protected

public

default

所属类

可访问

可访问

可访问

可访问

同一个包中的其它类

不可访问

可访问

可访问

可访问

同一个包中的子类

不可访问

可访问

可访问

可访问

不同包中的子类

不可访问

可访问

可访问

不可访问

不同包中的非子类

不可访问

不可访问

可访问

不可访问