一、关键字
this关键字:
作用:1.访问一个类的成员变量,避免与局部变量名冲突。
2.调用类的成员方法
3.使用this([参数1,参数2...])调用类中其他构造方法
使用this调用类的构造方法时,需要注意:1.只能在构造方法中调用其他构造方法,不能在成员方法中使用;2.在构造方法中this调用语句必须位于第一行,且只能出现一次。3.不能在一个类的两个构造方法中使用this相互调用。
static关键字:
作用:1.修饰成员变量 被修饰的变量称为静态变量,可以被所有实列共享。
2.修饰成员方法 被修饰的方法称为静态方法,可以在没有对象的情况下通过类名.方法名使用。
3.修饰代码块,被修饰的代码块称为静态代码块,只执行一次,可以用来初始化成员变量。
单例模式:1.类的构造方法用private修饰,这样保证了不能通过new关键字来创建对象。
2.在类的内部创建一个该类的实例对象,并使用静态变量引用该对象,为防止外界直接访问应设为private
3.创建一个静态方法来获取实例对象。
final关键字:
作用:1.修饰类,被修饰的类不能继承
2.修饰变量,被修饰的变量是常量,只能赋值一次。
3.修饰方法,被修饰的方法不能被重写。
super关键字:
作用:1.调用父类的成员变量和成员方法。格式:super.成员变量 super.成员方法(参数...)
2.调用父类的构造方法。位于子类构造方法第一行,只能出现一次。没有指定调用父类的那个构造方法时,默认为调用父类的无参构造。
二、重要概念
1.方法重载:java中允许在一个程序中定义多个名称相同的方法,但是参数的类型或个数必须不同,这就是方法重载。
2.重写父类方法:在子类中重写父类的方法,需要和父类中的方法有相同方法名、参数列表以及返回值。
3.多态:由于参数类型不同而导致执行结果各异的现象就是多态。例如:有一个方法可以实现动物叫声,当传入的对象是猫时,发出猫叫,传入的是狗对象是,发出狗叫。
4.线程:一个进程中可以有多个执行单元同时运行,这些执行单元可以看作程序执行的一条条线索,称为线程。由于cpu运行速度快,所以给人的感觉是同时执行,实际没有。
线程的创建方法:1.通过继承Thread类 java不能多继承
2.实现Runnable接口 适合多个线程处理同一个资源的情况,以及避免单继承带来的局限性,可以操作多个类。
5.内部类:1.成员内部类 格式:外部类名.内部类名 变量名=new 外部类名().new 内部类名();
2.静态内部类 格式:外部类名.内部类名 变量名=new 外部类名.内部类名();
3.方法内部类 在方法中定义类。
6.抽象类和接口:抽象类使用abstract修饰,可以不包含任何抽象方法,不可以被实例化,没有方法体,不可以被调用,只能通过创建子类来调用。(在子类中实现抽象方法)
接口:抽象类中的所有方法都是抽象方法。用interface修饰,通过一个类使用implements关键字来调用方法。
特点:1.接口中的方法都是抽象方法,不能实例化。
2.当一个类实现接口时,如果这个类是抽象类时,则实现接口中的部分方法即可,否则需要全部实现。
3.一个类通过implements实现接口时,可以实现多个接口,被实现的多个接口之间需要用逗号隔开。
4.一个接口可以通过extends继承多个接口,接口之间需要用逗号隔开。
5.一个类子在继承另一个类的同时还可以实现接口,此时extends关键字必须位于implements关键字之前。