Java面向对象期末复习(知识点回顾)

1. 程序运行不可缺的main方法

public static void main(String[] args){}

2. 标识符的命名规则

要点:字母/ / + 字母 / /_+字母/ /+字母//_/数字;

不能使用关键字:
​​​​在这里插入图片描述

类型有关的:int、short、byte、long、float、double、boolean、char、null、true、false等
类修饰有关的:class、public、private、protected、static、void、final、abstract、interface、extends、implements、instanceof、import、package、new、return、super、this等
结构有关:if、else、switch、case、default、for、while、do、break、continue等
异常有关:try、catch、finally、throw、throws等

3. 注释符号

//     /*  */    /**  */

4. 变量定义

类型 符号=值

5. 数据类型

整型(byte,short,int,long)、浮点型(float,double)、逻辑型(boolean,true/false)、字符型(char,16位)

6. 常量

整型、浮点型 (默认double)、逻辑型(默认false)、字符(’a’、’\141’、’\u0061’)、字符串(“1234”)

7. 运算符及表达式

在这里插入图片描述

8. 流程控制(顺序、选择、循环)

选择:if-else、switch-case-default(注意有无break的区别)
循环:while、do-while、for、for-each;注意break和continue在循环中的用法

9. 一维数组、二维数组的定义

类型 数组名[]=new 类型[大小]
类型 数组名[][]=new 类型[大小] [大小]
获取数组的长度:length属性,注意和string的length()方法区分。

10. 面向对象的三个特征:封装、继承、多态

11. 类、封装类的定义(私有属性如何定义等)

封装类

类名{
    
    
private 类型 属性名;
//相应的set/get方法
void set***(类型 参数){属性=参数;}
类型 get****(){return 属性;}
    //构造方法
    public 类名([类型 参数]){属性初始化}
    //方法定义
    public 类型 方法([类型 参数]){
    
    功能实现}
//方法重载:同一个类中,方法名一样,参数个数或类型不同
}

12. 抽象类和抽象方法的定义:

abstract class 类名{
	public abstract类型 方法([类型 参数]);
}

13。 static(不能修饰局部变量)和final:静态方法和最终方法

当类中定义了静态属性,则创建对象时,先静态/类属性、静态初始化,后对象属性,构造方法

扫描二维码关注公众号,回复: 17162922 查看本文章
class A {
    
    
  static int b=1;
  int c=0;
  static {
    
    
  	b++;
  }
  public A() {
    
     
  	b++;
  	c++;
  }
}

当创建a对象时,b和c的值是多少?(3,1)
非static属性是在new对象时被执行的,而static属性是在类加载时被执行的。

14. 继承:子类 extends 父类

方法重写:子类和父类之间,方法头(子类方法的访问权限要高于或等于父类)几乎一样,方法体不同。
只能继承一个父类,默认Object

15. 接口的定义和使用:interface 接口名{}

(1) 一个类可以实现多个接口:类名 implements 接口1,接口2……
(2) 一个接口可以继承extends多个父接口

interface 接口名 extends 父接口1,父接口2{}

16. 常用类和包的使用,掌握这些类的常用方法(课件中介绍的常用方法)

Math类

Math.floor(x):返回小于x的最大值
Math.ceil(x):返回大于x的最小值
Math.round(x):小数大于五全部加,等于五正数加,小于五全不加。如Math.round(-3.5)为-3.0

Calender

Calender.set(year,month-1,date);

Scanner类:.next***方法
String:一旦赋值后,原串内容保持不变,除非重新赋值。

trim()
length()
toUpperCase()、toLowerCase()
equals()、equalsIgnoreCase()、compartTo()
concat
statsWith、endsWith
indexOf、lastIndexOf
substring(i1,i2):从i1开始一直到i2-1
replace
charAt(i)
String[] split(“分隔符”):解析结果为字符串数组

StringBuffer类;

append
insert
setCharAt(i,ch)将i处的字符替换为ch
replace(start, end, str):将start到end-1的字符串替换为str
delete(start, end) 将start到end-1的字符串删除
deleteCharAt(i)删除i处的字符
reverse

ArrayList:添加add
HashMap:添加put

17. 异常处理

主动处理
  try{语句}
catch(异常类型 参数名){}
[finally{}]
方法抛出异常:public 类型 方法([类型 参数]) throws 异常1,异常2
{方法体;
if(条件) throw new 异常类型(“异常信息”)//语句抛出异常
自定义异常:
class 类名 extends Exception
{
    
    
	public 类名(String msg)
	{
    
    
		super(msg);//用自定义的异常信息初始化父类
	}
}

18)文件操作(import java.io.*;)

File

public String getName():得到文件的名字
public String getPath():得到文件的路径
String getAbsolutePath( ):得到文件的绝对路径
String getParent( ):得到文件的上一级目录
public boolean exists():判断文件或目录是否存在
public long length():返回文件的长度(字节)
public boolean isFile():检测是否是文件
public boolean isDirectory():检测是否是目录
public boolean renameTo(File file):重命名文件
public void delete():删除文件
boolean mkdir( ):根据当前对象生成一个由该对象指定的路径
boolean createNewFile():创建File
String[ ] list( ):列出当前目录下的所有内容(文件和文件夹)

区分是字节流还是字符流

字节流:一个字节一个字节读和写,可以读写任何格式的文件
FileInputStream和FileOutputStream: read( );write()
DataInputStream和DataOutputStream:read***(),write***()
字符流:一个字符
BufferedReader、BufferedWriter:readLine(),write(),newLine()
FileReader FileWriter

熟悉文件操作的流程
1.加载类:import java.io.*;
try{
    
    
2.打开:选择相应的合适流
3.用流中相应的方法去读写文件
4.关闭文件:文件对象.close();
}
catch(异常类型 参数名){}

猜你喜欢

转载自blog.csdn.net/weixin_43823060/article/details/131328448