Java期末笔记

1.主方法:

main方法是java程序的主方法,是java程序的入口,public static void main(String[] args){……}

2.标识符规范

凡是总结可以起名的地方都叫做标识符

1.标识符由英文字母大小写,0-9,_或¥组成,

2.数字不可开头

3.不能使用但是可以包含关键字和保留字

4.严格区分大小写,标识符长度不限制,标识符不能含空格

3.变量命名,变量作用域

1.变量名必须是合法的标识符,

2.作用域指的是作用范围,变量在什么范围内有效。一般会根据变量的“有效范围”将变量分为“成员变量”和“局部变量”:成员变量定义在类中,方法外;局部变量定义在方法中。

变量的作用发我内就是找离变量最近的{}来判断是成员变量还是局部变量

4.Java的基本数据类型

基本数据类型有8种基本类型,分类四大类型:

逻辑类型:boolean

整数类型:byte、short、int、long

浮点类型:float、double

字符类型:char

5.循环使用for循环,while循环

for循环:

控制一段代码反复执行很多次

格式:

for(初始化语句;循环条件;迭代语句){

循环体语句(重复执行的代码)

}

while循环:

初始化语句;

while(循环条件){

循环体语句(被重复使用的代码);

}

6.三元运算符

格式:(关系表达式)?表达式1:表达式2;

  • 先执行关系表达式,看其结果是true还是false
    • 如果是true,则执行表达式1
    • 如果是false,则执行表达式2

7.this关键字的使用

this代表当前对象的地址;可以出现在构造器、方法中,用于指定访问当前对象的成员

8.成员变量,局部变量的概念

“成员变量”和“局部变量”:成员变量定义在类中,方法外;局部变量定义在方法中。

9.一维数组的使用

数组是用来存储一批同种类型数据的内存区域(可以理解成容器),例子:

int[] arr ={20,10,80,60,90};

10.继承的相关知识

Java中提供了extends关键字,用这个关键字可以让一个类和另一个类建立起父子关系例子:

public class Stuent extends People {
 
}

11.抽象类的相关知识

1.父类中的方法,被他的子类们重写,子类各自的实现都不相同,父类的方法声明和方法主题,只有声明还有意义;方法主体则没有存在的意义了。我们把没有方法主体的方法称为抽象方法,Java语法规定,包含抽象方法的类接收抽象类。

总的来说就是:

抽象方法:没有方法体的方法

抽象类:包含抽象方法的类

使用abstrct关键字修饰的方法就是抽象方法,值得注意的是,抽象方法只包含一个方法名,没有方法体;定义格式为:

修饰符 abstract 返回值类型 方法名(参数列表)

例子:

public abstract void run(){
}

 如果一个类包含抽象方法,那么该类必须是抽象类:定义格式:

abstract class 类名字{
}

代码举例:

public abstract class Animal {
    public abstract void run();
}

12.多线程

  • 创建线程的方式有:
  • 继承thread类:thread也是实现Runnable接口,管理线程的生命周期
  • 实现Runnable接口:只有一个run方法
  • 实现Callable接口:只有一个call方法带有返回值
  • 推荐使用Runnable接口:extends只能继承一个类:单继承,implements可以实现多个接口:灵活,继承Thread的类创建的对象 只能调用一次start方法启动线程

13.异常

Java中异常类Throwable类,是顶级异常类,Throwable类有两个子类:

  • Error错误
  • Excepion异常

Error与Exception的区别是:

  • Error是Java程序运行中不可预料的异常情况,这种异常发生后,会直接导致JVM不可处理或者不可恢复的情况。所以这种异常不可能抓取到,比如OutOfMemoryError等
  • Exception是java程序运行中可预料的异常情况。我们可以获取到这种异常,并且对这种异常进行业务外的处理

异常通过try-catch代码块处理异常,例子:

try{
//异常可能发生的代码
}catch(//要抓捕的异常){
//异常处理方式
}finally{
//最终代码
}

14.选择结构当中switch case使用

switch case用来判断一个变量与一系列值中某个值是否相等,每一个值称为一个分支。

switch case规则:

  • switch语句可以拥有多个case,每个case后面跟一个要比较的值和冒号;
  • case语句中的值的数据类型必须与变量的数据类型相同;
  • 当变量的值与case语句的值相等,case语句之后的语句开始执行,直到出现break语句才会跳出switch
  • swich穿透性:当遇到break时,switch终止。程序跳转到switch后面的语句执行。case不必须要包含break。程序会继续执行下一条case,直到break;
  • switch可以包含一个default分支,该分支是switch的最后一个分支,该分支可以在任何位置,但建议写在最后。default在没有case的值和变量相等时执行。default不需要break。

语法格式:

switch(expression){
    case value :
    case value :  
        //穿透语句
        break;  //可选
    case value :
        //语句
        break;  //可选
    //可以有任意数量的case
    default:    //可选
        //语句
}

15.关键字final与finally的区别

final关键字:final可以声明变量,形参,方法,类

当用final修饰变量时,该变量变为常量,常量的值不可改变.例如char[]arr={1,2,3,4,5},当定义一个数组时,数组默认被final修饰即不可改变,且final直接初始化赋值时用static修饰

 finally是Java的一种异常处理机制,finally是对Java异常处理模型的最佳补充

finaly{}结构的代码块使其中的代码在出现异常,虚拟机停止运行时仍会执行final代码块中的内容

 

16.重载与重写的区别

重载:在同一类中相同方法名,不同参数列表、方法体也不同。(类的构造函数)
重写:子类中有和父类返回值、方法名和参数都相同,但方法体不一样。异常、访问级别不能超过父类。

18.jdbc

jdbc的作用:可以和数据库创建链接;发送sql语句;接收返回值,处理结果。

19.类的封装

类的封装:隐藏对象的属性和实现细节,仅对外提供公共访问方式。

实现类的封装:

private操作符:在类属性的前面加上private操作符可以类的属性私有化,数据只能在本类中访问,其他类无法访问

20.文件的复制

  1. 使用FileStreams复制
  2. 使用FileChannel复制
  3. 使用Commons IO复制
  4. 使用Java7的Files类复制

21.集合的使用,集合的添加,集合的遍历

array list集合:

import java.util.ArrayList;
import java.util.Iterator;

/*
    1.1、每个集合对象的创建(new)
	1.2、向集合中添加元素
	1.3、从集合中取出某个元素
	1.4、遍历集合
 */
public class ArrayListTest {
    public static void main(String[] args) {
        // 创建ArrayList集合
        ArrayList<String> arrayList = new ArrayList<>();
        // 向集合添加元素
        arrayList.add("zhangsan");
        arrayList.add("lisi");
        arrayList.add("wangwu");
        arrayList.add("zhaoliu");
        // 从集合中取出某个元素
        String i = arrayList.get(1);
        System.out.println(i);
        System.out.println("===============分割线============");
        // 遍历集合 获取迭代器进行集合遍历
        Iterator<String> it = arrayList.iterator();
        while(it.hasNext()){
            System.out.print(it.next()+" ");
        }
        System.out.println("\n===============分割线============");
        // 遍历集合 通过迭代器配合for循环遍历
        for(Iterator<String> its = arrayList.iterator() ;its.hasNext();){
            System.out.println("====>"+its.next());
        }
        System.out.println("===============分割线=============");
        // 遍历集合 通过增强for
        for(String fors : arrayList){
            System.out.print(fors+" ");
        }
        System.out.println("\n===============分割线=============");
        // 遍历集合 通过获取长度加for的方式
        for(int j = 0;j < arrayList.size();j++){
            System.out.print(arrayList.get(j)+" ");
        }
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值