JAVA基础

标识符命名规则:

由字母、数字、下划线和$符号组成

1.不能以数字开头

2.不能是java关键字单可以包含关键字

3.区分大小写

常量:

分类:

1. 字面值常量

2. 自定义常量

变量:
分类:

基本数据类型:

字型

Byte 字节

整形:
short 短整型

Int  整形

四类八种: Long 长整形

浮点型

Float 单精度浮点型

Double 双精度浮点型

布尔类型

Ture  

False

引用数据类型:

String,数组,类

 

 

运算符:

分类

1. 赋值运算符:=

2. 算数运算符:+ -/*++--

3. 比较运算符:< <= > >= == !=

4. 逻辑运算符:&& &|| |^!

5. 位运算符:<<左移

>>右移

>>>全右移

~按位取反

 &按位于

 |按位或

 ^按位亦或

6三目运算符:

布尔值?=表达式1:表达式2

7. 复合运算符:

+=-=*=/=%=

 

流程控制语句:

流程控制结构:

1. 顺序结构

2. 分支结构

3. 循环结构

顺序结构:

特点:从上到下由左到右依次执行

分支结构:

特点:选择执行并且只执行一次

 

if

If语句是使用布尔表达式或布尔值作为分支条件来进行分支的语句

If(关系表达式){语句体}

If(关系表达式){语句体}else{语句体}

If(关系表达式){语句体}else if(关系表达式){语句体}......else{语句体}

 

Switch

Switch(常量值)

Case(值)

语句体

Case(值)

语句体

Case(值)

语句体

......

注意事项:
1.switch对应得case要写对应的常量值

2. 如果没有break,就会从case对应的语句体往下执行直到遇到breakswitch语句结束

3. 如果有break那么就会执行完当前语句体结束

4. 如果所有的case值都不符合就会执行defaule对应的语句

5. 所有的casedefaule没有先后顺序

 

循环结构:

特点:执行多次

 

For循环

格式:

For(初始化语句;循环判断语句;迭代语句){

循环体;

}

 

While循环:

格式:

初始化语句

While(循环判断语句){

循环体

迭代语句

}

 

Do...while循环:

格式

Do{

循环体语句

迭代条件

}while(循环判断语句)

 

循环控制语句:

Break

跳出循环,打断循环

Continue

中断本次循环,继续下次循环

Return

返回上一个方法

 

循环嵌套:

外部循环一次内部循环全部;

数组:

一维数组:

静态初始化:

数据类型[] 数组名={数组值用 , 号隔开}

动态初始化

数据类型[] 数组名= new 数据类型[分配的空间数]

数组名.length  获取数组的长度;

二维数组:

静态初始化:

数据类型[][] 数组名={{数组值用 , 号隔开} {      }}

动态初始化

数据类型[][] 数组名= new 数据类型[分配的空间数][分配的空间数]

方法:

格式:

修饰符 返回值 方法名(数据类型,参数1......|参数列表|{

方法体

}

 

定义位置:

类中方法外;

方法重载:

在同一个类中方法名相同参数列表不同在方法调用时发生重载;

 

面向对象

面向对象的思想:

考虑一个类有哪些对象 这些对象干了什么 指挥这些对象去完成需求

类和对象的描述

类是一组属性和行为的集合,是对一些具相同的事物的描述

对象是类的具体

三大特征:

1. 封装

2. 继承

3. 多态

一、封装:

定义:隐藏属性和实现细节,暴露一些公开的访问方式

如何实现:

Private,提供get/set方法

好处:保护私有化数据不被随意更改,增强代码的维护性

二、继承:extends

定义:在多个类中存在相同的属性和行为时,将这些内容抽调到单独一个类中,其他类就无需定义这些属性和行为,只需要继承就可以了

概念:

子类继承父类子类就具有了父类的非私有的属性和方法

什么时候使用继承:

在满足继承条件的时间使用继承

格式:

修饰符 class 类名 extends 父类名{

类体

}

特点:

1. 只能单继承

2. 可以多层继承

好处:

提高了代码的复用性和维护性

注意:

1. 子类只能继承父类非私有的成员变量和成员方法

2. 子类不能继承父类的构造方法只能用super调用(super())

三、方法重写:

在继承中 子类重写声明了父类的某一个方法;

方法重写不能重写父类的私有方法

重写的使用特点:

1. 如果方法名不同,就会调用对应子类的成员方法(创建的什么类的对象调用的就是哪个类中的方法)

2. 如果方法名相同,最终使用的是子类自己的方法

四、多态

定义:

一个事物在不同时刻表现出不同的状态就叫多态

前提:

1. 继承关系

2. 方法重写

3. 父类引用指向子类

多态的特点:

成员方法: 编译看左边,运行看右边

成员变量: 编译看左边,运行看左边

静态变量,方法: 编译看左边,运行看左边

多态的好处:

提高了代码的扩展性和维护性

弊端:

父类引用不能访问子类的特有方法

如果需要引用必须向下转型

格式:

父类 变量名=new 子类()

((子类)变量名).子类方法

一个类包括:

成员方法

成员变量

构造方法

代码块

内部类

一个标准类的组成:

非私有属性

1.Get/set方法

2.构造方法

构造方法的定义:

格式:

修饰符 类名(){}

修饰符 类名(参数列表){}

构造方法分全参和无参

特点:

1. 方法名与类名必须一致

2. 没有返回值类型(连void也没有)

3. 构造方法也可以重载

4. This关键字调用(this调用本类  格式:this()父类调用super();)

创建对象是代码的执行顺序:

1. 静态代码块和静态变量初始化数据,顺序执行(静态方法和变量随着类的加载而加载)

2. 构造代码块和成员变量赋值,顺序执行

3. 构造方法执行

关键字:

Static 静态的:

修饰属性:在内存中值占用一块空间,被所有对象共享

修饰方法:调用时可以用类名直接调用

格式:

类名.方法名()

修饰代码块:随着类的加载而加载

This super 关键字:

This指调用该方法的对象

方法被那个对象调用this就代表那个对象

注意:

Static方法中不能使用this关键字

什么时候使用this

局部变量隐藏成员变量

Final关键字:

final修饰的成员变量只能够赋值一次

final修饰的成员方法不能被重写

final修饰的类不能被继承

五、抽象类

特点:

1. 不能创建对象

2. 继承抽象类的类必须实现父类的抽象方法,如果不实现那么这个类也必须是抽象类

3. 有抽象方法的类一定是抽象类,抽象类不一定有抽象方法

抽象类的格式:

Abstract class 类名{类体}

抽象方法格式:

Abstract 返回值类型 方法名();

注意 没有方法体

六、接口

关键字:

Interface 接口

Implements 实现

格式:

Interface 接口名{}

Class 类名 implements 接口名

提点:

1. 所有方法必须是抽象方法,修饰符可以省略

2. 所有的成员变量必须是公开静态常量,修饰符可以省略

3. 没有构造方法,也不可以创建对象

4. 一个类没有接口上限

一个类只可以有一个父类,但可以有很多接口(只能但继承但可以多实现)

Instanceof 关键字

判断一个对象是不是这个类或其子类的对象

七、

package 打包 关键字(com.(此处的点是为了分层文件夹)xxx)(包名必须全部小写)(通常是公司域名倒写)

Import 导包 关键字

编译:

Javac -d.文件名

运行:

java.包名.文件名

jar包(双击运行)指令:

Jar -cvf jar包名.jar 数据源

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值