Java搞不清的几个小知识

Java搞不清的几个小知识

1、构造代码块
(1)作用:给对象进行初始化,对象建立时执行,优先于构造函数执行
(2)构造代码块和构造函数的区别:

  • 构造代码块是给所有不同对象的共性进行统一初始化
  • 构造函数是给对应的对象进行初始化

2、Kun k = new Kun()在内存中的操作

(1)将Kun.class文件加载进内存中
(2)如果k定义在主方法中,则就会在栈空间开辟一个变量空间k
(3)在堆内存给对象分配空间
(4)对对象中的成员进行默认初始化
(5)对对象中的成员进行显示初始化
(6)调用构造代码块对对象进行初始化
(7)调用构造方法对对象进行初始化,对象初始化完毕
(8)将对象的内存地址赋值给k变量,让k变量指向该对象

3、Math类
无构造函数,方法均为静态的

4、制作API
API(全拼):Application Program Interface 应用程序编程接口。
(1)类中的内容需要用文档注释。
(2)使用JDK\bin目录下的javadoc工具。

格式:javadoc -d 目录 -author -version kun.java

5、this和super的区别
(1)this:代表本类对象的引用
(2)super:代表父类的存储空间

6、内部类只能访问被final修饰的局部变量

7、接口和抽象类的区别
(1)抽象类只能被单继承
接口可以多实现, 避免了多继承的局限性。
(2)抽象类中的数据特点:

  • 成员变量:可以是变量或常量
  • 成员方法:可以是抽象方法或非抽象方法
  • 构造方法:有构造方法

(3) 接口中的数据特点:

  • 成员变量:常量,默认修饰 public static final
  • 成员方法:抽象方法,默认修饰 public abstract
  • 构造方法:无构造方法

(4)

  • 抽象类中定义的是继承体系中的共性功能
  • 接口中定义的是继承体系中的扩展功能
发布了66 篇原创文章 · 获赞 7 · 访问量 4667

猜你喜欢

转载自blog.csdn.net/weixin_44717095/article/details/104791367