20210924

20210924

关键字

instanceof 运算符

左边: 对象 右边:类 输出True or False

x instanceof SuperClass x 属不属于SuperClass


java.lang.Object类

定义了最基本的状态与行为

20210924

clone :克隆

equals: 是否同一

finalize: 内存以外其他资源回收

getClass: 对象实际类型

hashcode:返回内存地址

toString: 默认的,字符串表示

多线程:① notify: ② notifyAll: ③wait:

equals

1.相等与同一

相等:两对象有相同类型,及相同属性值,则称两者相等

同一:两引用变量指向的是同一个变量,则称这两个变量同一

两对象同一,必相等

相等不一定同一。

==判断 是两个对象是否同一

2.定义

判断两个对象是否同一:

public boolean equals(Object x){

return this=x;

}

3.equals 方法重写:让其完成判断“相同的含义”

Strings:

Circle:

先判断类型,再判断属性:

public boolean equals(Object x){

if(this.getClass()!=x.getClass())

return false;

Circle b=(Circle)x;//强制类型转换,因为x显示出来的类是object类

return

(this.radius==b.radius);

}

命令行参数的输入

在main()方法中启动一个Java程序,main()使用一个字符串数组作为参数,它表示启动JAVA这个程序时的命令行参数

JAR文件(自学)

JAR(java Archive File)

对象初始化与回收

1.初始化

2.回收


构造方法

构造方法(constructor)是一种特殊的方法,它是在对象被创建时初始化对象的成员的方法。

方法名与类名相同,无返回值

默认构造方法

类中无声明方法,无参数、方法体为空。

若类声明中没有给实例变量赋初值,则对象的属性值为0/空

自定义构造方法

无参的构造方法对其子类的声明很重要。如果在父类中不存在无参的构造方法,则要求其子类构造方法中显式调用父类构造方法,否则在子类构造方法会出错。

在一个构造方法中调用另一个构造方法

this.关键词 必须出现在方法中的第一行

通常用参数个数较少的构造方法调用参数个数较多的方法

共有/私有构造方法

public

private

构造方法执行顺序

class Window{
   int doornum;
   public Window(){
       this(0);
       System.out.println("Window()");
  }
   public Window(int doornum){
      this.doornum=doornum;
      System.out.println("Window("+doornum+")");
  }
}
class Car{
   Window w1=new Window(1);
   String color;
   public Car(){
       this("White");
       System.out.println("Car()");
       w3=new Window();
  }
      public Car(String color){
     System.out.println("Car("+color+")");
}
 public void Speedup(){
      System.out.println("Car:Speedup()");
}  
 Window w2=new Window(2);
 Window w3=new Window(3);
}
public class ex3_15{
   public static void main(String[] args){
       Car c=new Car();
       c.Speedup();
  }
}

运行结果: Window(1) Window(2) Window(3) Car(White) Car() Window(0) Window() Car:Speedup()

静态初始化器

Static修饰的{}的语句组,用来初始化

对整个类自身进行初始

不是方法,无方法名,返回值,和参数值

调用1次,在类被加载入内存是执行



上一篇:01工厂模式


下一篇:Mysql与Oracle的删除修改语法差异示例