知识点整理

Java面向对象编程的特点:继承性,多态性,封装性。

1、内部类

a) 匿名内部类:匿名子类类名的实现机制

b) 成员内部类:是和函数或者成员属性平级的内部类


阶段测试总结

成员内部类注意点:

1)访问权限:可以用四种访问权限修饰

2)成员内部类可以是静态的

3)接口是特殊的抽象类

 

注意:外部类只能用publicdefault修饰

c) 函数内部类

阶段测试总结


函数内部类不允许被任何访问权限修饰

1、定义基本数据类型:如果是整数,则默认是int,如果是小数默认是double

2、流的分类:

a) 字节流:字节输入流、字节输出流  InputStream\OutputStream

b) 字符流:字符出入流、字符输出流  Reader\Writer

c) 直接能使用的基类:FileInutStream\FileOutputStream    FileReader\FileWriter

d) 字节包装流:DataInputStream\DataOutputStream

            ObjectInputStream\ObjectOutputStream

BufferedInputStream\BufferedOutputStream

e) 字符包装流:BufferedReader\BufferedWriter

f) 如何把字节流转化为字符流:InputStreamReader\OutputStreamWriter

 阶段测试总结


4、继承extendsimplements使用场景

A类是普通类   B类是抽象类   C类是接口

i. extendsA extends B    A extends A  B extends A  B extends B  C extends C

ii. Implements: A implements C    B implements C

抽象类与接口的异同:

相同点:

 1、都不能被直接实例化,都可以通过继承实现其抽象方法。

 2、都是面向抽象编程的技术基础,实现了诸多的设计模式。

不同点:

     1、接口支持多继承;抽象类不能实现多继承。

 2、接口只能定义抽象规则;抽象类既可以定义规则,还可能提供已实现的成员。

     3、接口是一组行为规范;抽象类是一个不完全的类,着重组的概念。

  4、接口可以用 于支持回调;抽象类不能实现回调,因为继承不支持

  5、接口只包含方法、属性,索引器、事件的签名,但不能定义字段和包含实现的方法;抽象类可以定义字段、属性、包含有实现的放法。

   6、接口可以作用于值类型和引用类型;抽象类只能作用于引用类型。


Java启动一个线程是用run()还是start(),有啥区别?

启动一个线程是start()方法;线程启动后start()方法会去调用run()内容。

区别:start()是创建并启动一个线程,而run()是运行线程里的代码。


静态变量和实例变量的区别:

在语法定义上的区别:静态变量前要加static关键字,而实例变量前不加;

在程序运行时的区别:实例变量属于某个对象的属性,必须创建了实例对象,其中的实例变量才会被分配空间,才能使用这个实例变量。静态变量不属于某个实例对象,而是属于类,所以也称为类变量,只要程序加载了类的字节码,不用创建任何实例对象,静态变量就会被分配空间,静态变量就可以被使用了。总之,实例变量必须创建对象后才可以通过这个对象来使用,静态变量则可以直接使用类名来引用。


属性的访问修饰符public,private,protected以及不写时的区别

   作用域

   当前访问

   同包

   子类

    其他

   public

T

T

T

T

   protected

T

T

T

F

   default

T

T

F

F

   private

T

F

F

F



相关文章:

  • 2021-07-25
  • 2021-12-10
  • 2021-06-28
  • 2021-07-15
  • 2022-02-22
  • 2021-10-14
猜你喜欢
  • 2021-12-22
  • 2019-01-03
  • 2021-11-07
  • 2021-05-23
  • 2021-09-28
  • 2022-02-03
  • 2022-12-23
相关资源
相似解决方案