黑马程序员----7.01

 

初始化构造函数默认为空,如果自己定义了带参数的构造函数,则系统不再自动定义空的函数,这时,在new对象时必须带参数,否则自己要定义出空的构造函数。

this:
public void fun1()
{
 System.out.println(name);
}
public void fun2()
{
 Person a2 = new Person("a2");
 a2.fun1();
 this.fun1();
}

Person a1 = new Person("a1");
a1.fun2();

结果:a2
      a1

this是当前被调用方法在另外一个对象中的对象名,上面那个this可省。

finalize方法,回收垃圾时自动调用执行,
ststem.gc(),垃圾回收器

static可共享成员变量

静态代码块static{}:在该类中任何一个方法被调用之前执行

单态设计模式:
class Chinese
{
 static Chinese objRef = new Chinese();  //static,如果没有,则永远循环创建Chinese对象
 public static Chinese getInstance();
 {
  return objRef;
 }
 Private Chinese()
 {
  ………………
 }
}
无论怎样调用,都只返回一个对象,不可创建多个Chinese对象

内部类中可以访问外部类中的成员变量,但内部类中的变量不能被外部类直接调用
内部类如果用static修饰,就相当于一个外部类

变量名相同时:
public class Outer
{
 private int size;
 public class Inner
 {
  private int size;
  public void doStuff(int size)
  {
   size++;  //引用的是doStuff中的形参
   this.size++;  //引用的是Inner类中的成员变量
   Outer.this.size++;  //引用的是Outer类中的成员变量
  }
 }
}

方法中也可以定义内部类,但方法中人内部类要访问该方法中的局部变量时,要在局部变量定义之前加final

一个类继承某类后,包含被继承类中的所有内容,但不继承父类的构造方法以及私有成员方法,在子类中可使用super(参数)调用父类的构造方法
子类在调用构造函数时,先去调用父类中不带参数的构造函数
子类中的构造函数可使用super()调用父类中指定的构造函数
子类中的访问权限不能弱于父类
final类不能被继承
final变量就是常量,只能在定义时或在构造方法中赋值,不能再被赋值
final方法不能被子类相同的方法覆盖
static的final变量,在定义时赋值,即可以其他类中直接调用此常量,此时不能在构造函数中赋值


抽象方法:abstract int aa(int x,int y);
抽象类前也要加abstract
抽象类中不是所有的方法都必须是抽象,担只要有抽象方法,类前都要有abstract
抽象类不能产生对象,由子类继承,覆盖抽象方法

instanceof:判断a是否是B的对象 a instanceof B 

接口。

 


  


}

 

 

 

 

 

 

 

 

 

 

 


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值