17. 接口和抽象类的区别是什么
1. 接口的方法默认是 public,所有方法在接口中不能有实现(Java 8 开始 接口方法可以有默认实现),抽象类可以有非抽象的方法
2. 接口中的实例变量默认是 final 类型的,而抽象类中则不一定
3. 一个类可以实现多个接口,但最多只能实现一个抽象类
4. 一个类实现接口的话要实现接口的所有方法,而抽象类不一定
5. 接口不能用 new 实例化,但可以声明,但是必须引用一个实现该接口 的对象 从设计层面来说,抽象是对类的抽象,是一种模板设计,接口是 行为的抽象,是一种行为的规范。
18. 成员变量与局部变量的区别有那些
1. 从语法形式上,看成员变量是属于类的,而局部变量是在方法中定义的 变量或是方法的参数;成员变量可以被 public,private,static 等修饰符所 修饰,而局部变量不能被访问控制修饰符及 static 所修饰;但是,成员 变量和局部变量都能被 final 所修饰;
2. 从变量在内存中的存储方式来看,成员变量是对象的一部分,而对象存 享学课堂 在于堆内存,局部变量存在于栈内存
3. 从变量在内存中的生存时间上看,成员变量是对象的一部分,它随着对 象的创建而存在,而局部变量随着方法的调用而自动消失。
4. 成员变量如果没有被赋初值,则会自动以类型的默认值而赋值(一种情 况例外被 final 修饰的成员变量也必须显示地赋值);而局部变量则不 会自动赋值。
19. 创建一个对象用什么运算符?
对象实体与对象引 用有何不同? new 运算符,new 创建对象实例(对象实例在堆内存中),对象引用指向对象 实例(对象引用存放在栈内存中)。
一个对象引用可以指向 0 个或 1 个对象 (一根绳子可以不系气球,也可以系一个气球);一个对象可以有 n 个引用指向 它(可以用 n 条绳子系住一个气球)。
20. 什么是方法的返回值?返回值在类的方法里的作 用是什么?
方法的返回值是指我们获取到的某个方法体中的代码执行后产生的结果!(前 提是该方法可能产生结果)。返回值的作用:接收出结果,使得它可以用于其他 的操作!
21. 一个类的构造方法的作用是什么
若一个类没有 声明构造方法,该程序能正确执行吗 ?为什么? 主要作用是完成对类对象的初始化工作。可以执行。因为一个类即使没有声明 构造方法也会有默认的不带参数的构造方法。
22. 构造方法有哪些特性
1. 名字与类名相同;
2. 没有返回值,但不能用 void 声明构造函数;
3. 生成类的对象时自动执行,无需调用。
23. 静态方法和实例方法有何不同
1. 在外部调用静态方法时,可以使用"类名.方法名"的方式,也可以使用"对 象名.方法名"的方式。而实例方法只有后面这种方式。也就是说,调用 静态方法可以无需创建对象。
2. 静态方法在访问本类的成员时,只允许访问静态成员(即静态成员变量 和静态方法),而不允许访问实例成员变量和实例方法;实例方法则无 此限制.
24. 对象的相等与指向他们的引用相等,两者有什么 不同?
对象的相等,比的是内存中存放的内容是否相等。而引用相等,比较的是他们 指向的内存地址是否相等。
想要了解更多Java基础知识,可以点击评论区链接和小编一起学习java吧,此视频教程为初学者而著,零基础入门篇!给同学们带来全新的Java300集课程啦!java零基础小白自学Java必备优质教程_手把手图解学习Java,让学习成为一种享受_哔哩哔哩_bilibili