Core Java(四)

知识点1 为什么用this?

第一,  当一个类的属性名和方法或构造器中的参数名相同的时候,用this来区别属性和参数

第二,  在一个类里,一个构造器调用另一个构造器(有多个重载的构造器)

a(int i){};  a(int I,int j){this(i);//调用了单参构造器}

 

知识点2 在一个源文件中可以中多个类,但是只能有一个public

 

知识点3 supper的用法

第一,  可以调用父类的构造器

第二,  调用父类的属性和方法

 

知识点4 多态

什么是多态?同一个动作,不同的对象,有不同的行为

class A{

  public void play(){

      System.out.println(“A’s play”);

}

}

class B extends A{

  public void play(){

      System.out.println(“B’s play”);

}

}

 

 

 

 

class Test{

 

  public void disPlay(A a){

     a.play();

}

  public static void main(String [] args){

Test t=new Test();

A a=new A();

A a1=new B();

t.disPlay(a);

t.disPlay(a1);

}

}

 

1.      在编译的时候,检查该引用的类型中有没有要调用的方法

2.      在运行的时候,看这个引用指向的是什么类型的对象,看该对象的类中有没有调用的方法,有的话调用(这里,如果是父类指向子类,父类中有该方法,那么子类继承,可以调用)

为什么用多态?1。复用 2。维护

如何实现多态?

1.声明一个父类

1.子类继承父类

2.他们的类中有个同名的方法,但是内容不一样

3.在主类中,方法的参数为父类的引用类型,里面调用他们的同名方法

 

知识点8 方法覆盖

1.方法名字相同

2.返回值相同

3.方法的参数相同

4.子类的方法数量不能减少

4.子类的异常不能扩大

 

知识点9 instanceof

辨别对象的类型,判断一个对象的类型是什么(a instanceof A

 

知识点10 static

静态成员:包括静态属性,静态方法,静态块

静态属性:private static int a;

类的静态成员是在类的加载的时候初始化的,而且只能初始化一次

 

知识点11 类的初始化过程

1.初始化静态成员

2.初始化父类的属性(缺省值)包括语句块{  }

3.调用父类的构造器

4.初始化自身的属性

5.调用自身的构造器

 

知识点12 抽象类

类当中有抽象方法,用abstract修饰,成为抽象类,里面可以有方法的实现

 

知识点13 接口

可以实现多个接口,在方法中没有任何的实现

 

知识点14 final

不可改变的

定义一个常量:final int I=0;  如果这样写,就不能再给他赋值了

final int I;

构造器 (){I=0;};  这样写就没有问题

final A a=new A(); 不能再给a new对象了,但是对象中的值还是可以修改的

静态常量必须声明赋值,final的不用

static可以节省空间

final修饰的方法不能被覆盖

final修饰的类不能被继承

 

小技巧1 点类的前面的括号,按ctrl+Shift+p直接到类尾了

 

知识点15  接口(二)

1.方法都是抽象的方法

2.在接口里定义的属性都是public

3.接口可以多重继承

 

知识点16 访问控制

在同一个包中,除了私有成员都可以访问

不同的包中只能访问公开的属性和方法

不同的包中子类能够访问公有和受保护的方法和属性

 

 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值