this(掌握) (1)代表本类对象的一个引用。 特点:谁调用,this就代表谁。 (2)this的使用场景: A:避免局部变量隐藏成员变量 public Student(String name,int age) { this.name = name; this.age = age; }
public void setName(String name)
{ this.name = name; } B:在方法内部有一个this对象,哪个对象调用,this代表谁。 举例:比较两个学生的年龄 C:this在构造方法中的使用 this(参数):表示调用构造方法,调用哪个根据参数决定。 注意:在构造方法的第一条语句使用。
6:代码块(了解)
(1)用{}括起来的代码,就叫代码块。 (2)代码块: 局部代码块:可以控制局部变量的生命周期。 构造代码块:每个构造方法调用前都会去调用。 1 :static(掌握) (1)static:是一个关键字,可以用于修饰成员(成员变量和成员方法) (2)特点: A:随着类的加载而加载 B:优先于对象的存在而存在 C:可以直接使用类名访问 D:被所有的对象共享 (3)静态使用的注意事项: A:静态只能访问静态成员,非静态可以访问静态也可以访问非静态成员。 B:静态方法中没有this,super关键字。 this,super是创建对象的时候才存在的,而静态是随着类的加载而加载。 C:主方法是静态的。(要求大家理解为什么主方法的格式是那个样子的) (4)静态成员和非静态成员的区别: A:静态成员是跟类相关的,也被称为类变量。可以被类名直接访问,也可以被对象访问。 建议使用类名访问。 非静态成员是跟对象相关的,所以,被称为成员变量,实例变量。被对象调用。 B:静态成员随着类的加载而加载,也就意味着随着类的消失而消失。生命周期长。 非静态成员是创建对象才存在的,随着对象的消失而消失。 C:静态成员存储在方法区中的静态区。 非静态成员存储在对象所属堆内存。 D:静态修饰的是类的所有对象的共享数据。 非静态修饰的是对象的特有数据。 (5)什么时候使用静态呢? A:根据实际情况分析,如果是被所有对象共享的数据,就用静态修饰。 B:如果成员方法没有访问过对象的特有数据,这个方法就可以定义为静态的。
举例:喝水----饮水机(static)----水杯(特有的)
2:如何制作帮助文档(了解)
3:
单例设计模式(理解)
(1)单例设计模式:保证类在内存中只有一个对象。 (2)实现的思路: A:外界不能创建对象 B:本类创建一个对象 C:提供公共的访问方式 (3)代码体现:(掌握) A:饿汉式 class Student { private Student(){}
private static Student s = new Student();
public static Student getStudent()
{ return s; } }
B:懒汉式
class Student { private Student(){}
private static Student s = null;
public static Student getStudent()
{ if(s==null) { s = new Student(); } return s; } } |
java基础this/static/单例
最新推荐文章于 2023-04-30 23:00:37 发布