JAVA学习总结四

接口和抽象类:

实现多继承;数据成员(抽象类可以有自己数据成员,可以有非abstract的成员方法;接口中数据成员是static final的,所有方法都是abstract的);方法实现(抽象类中可以有方法实现,接口中不能有实现方法);变量(抽象类变量默认friendly实现类可以重新定义、重新赋值;接口中变量是public static final的,且要赋值,故实现类不能重新定义、重新赋值)。

1.abstract class Java 语言中表示的是一种继承关系,一个类只能使用一次继承关系。但是,一个类却可以实现多个interface

2.abstract class 中可以有自己的数据成员,也可以有非abstract的成员方法,而在interface中,只能够有静态的不能被修改的数据成员(也就是必须是 static final的,不过在 interface中一般不定义数据成员),所有的成员方法都是abstract的。

3.abstract classinterface所反映出的设计理念不同。其实abstract class表示的是"is-a"关系,interface表示的是"like-a"关系。

4.实现抽象类和接口的类必须实现其中的所有方法。抽象类中可以有非抽象方法。接口中则不能有实现方法(不能有方法体)。

5.接口中定义的变量默认是public static final 型,且必须给其初值,所以实现类中不能重新定义,也不能改变其值。

6.抽象类中的变量默认是 friendly 型,其值可以在子类中重新定义,也可以重新赋值。 7.接口中的方法默认都是 public,abstract 类型的。

 

多线程实现的两种方法:

A.             继承Thread

class Thread1 extends Thread{

       public void run(){}

}

public class Ex{

       public static void main(String[] args){

       Thread1 t1=new Thread();

       t1.start();

}

}

B.实现Runnable接口

class Runnable1 implements Runnable{

       public void run(){}

}

Public class Ex{

       Public static void main(String[] args){

       Thread r1=new Thread(new Runnable1();)

       r1.start();

}

}

 

equals==的区别:

equals()方法是用来检测两个对象的内容是否相等/    

  ==的比较分两种:一种是比较基本数据类型,例如int,那么比较的就是基本数据类型的值;    

  如果比较的是对象,例如String,那么比较的是两个句柄是否指向内存中的同一个对象。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值